本文整理汇总了C#中PackageIdentity.ToFolderName方法的典型用法代码示例。如果您正苦于以下问题:C# PackageIdentity.ToFolderName方法的具体用法?C# PackageIdentity.ToFolderName怎么用?C# PackageIdentity.ToFolderName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PackageIdentity
的用法示例。
在下文中一共展示了PackageIdentity.ToFolderName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ReconstructHintPath
public static FrameworkedHintPath ReconstructHintPath(
string assemblyFilePath,
PackageIdentity oldPackageIdentity,
PackageReference newestPackage,
Reference reference )
{
var parts = assemblyFilePath.Split( Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar ).ToList();
var newFramework = parts.Select( NuGetFramework.Parse ).FirstOrDefault( f => !f.IsUnsupported );
var hintParts = reference.HintPath.Split( Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar ).ToList();
var oldFramework = hintParts.Select( NuGetFramework.Parse ).FirstOrDefault( f => !f.IsUnsupported );
List<string> resultPath = new List<string>();
for ( int i = hintParts.Count - 1; i >= 0; i-- ) {
if ( hintParts[i].StartsWith( "$" ) ) {
resultPath.Add( hintParts[i] );
}
else if ( hintParts[i].Equals( oldPackageIdentity.ToFolderName() ) ) {
resultPath.Add( newestPackage.ToFolderName() );
}
else if ( oldFramework != null && newFramework != null && hintParts[i].Equals( oldFramework.GetShortFolderName(), StringComparison.OrdinalIgnoreCase ) ) {
resultPath.Add( newFramework.GetShortFolderName() );
}
else {
resultPath.Add( hintParts[i] );
}
}
resultPath.Reverse();
return new FrameworkedHintPath {
Framework = newFramework,
HintPath = Path.Combine( resultPath.ToArray() )
};
}