in src/PortingAssistant.Client.Client/FileParser/ProjectFileParser.cs [43:87]
public List<PackageVersionPair> GetPackageReferences()
{
// packages.config
if (IsPackagesConfigProject())
{
return GetPackageReferencesFromConfigFile().Select(p =>
new PackageVersionPair
{
PackageId = p.PackageIdentity.Id,
Version = p.PackageIdentity.Version.ToNormalizedString()
})
.Where(p => p.PackageId != null && p.Version != null)
.ToList();
}
// Project References
if (IsProjectReferenceProject())
{
return _projectAnalyzer.ProjectFile.PackageReferences
.Select(p =>
{
var version = p.Version;
try
{
version = new NuGetVersion(p.Version).ToNormalizedString();
}
catch (Exception)
{
// Throwing away exceptions is a code smell, but sometimes it is valid and necessary.
// If it is valid to throw away the exception, we should leave a comment explaining why
}
return new PackageVersionPair
{
PackageId = p.Name,
Version = version
};
})
.Where(p => p.PackageId != null && p.Version != null)
.ToList();
}
// No nuget dependencies found
return new List<PackageVersionPair>();
}