本文整理汇总了C#中Runtime.GetCompatibleTargetFramework方法的典型用法代码示例。如果您正苦于以下问题:C# Runtime.GetCompatibleTargetFramework方法的具体用法?C# Runtime.GetCompatibleTargetFramework怎么用?C# Runtime.GetCompatibleTargetFramework使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Runtime
的用法示例。
在下文中一共展示了Runtime.GetCompatibleTargetFramework方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateLockFileTargetLibrary
public static LockFileTargetLibrary CreateLockFileTargetLibrary(Runtime.Project projectDependency,
RestoreContext context)
{
var targetFrameworkInfo = projectDependency.GetCompatibleTargetFramework(context.FrameworkName);
var lockFileLib = new LockFileTargetLibrary
{
Name = projectDependency.Name,
Version = projectDependency.Version,
TargetFramework = targetFrameworkInfo.FrameworkName, // null TFM means it's incompatible
Type = "project"
};
var dependencies = projectDependency.Dependencies.Concat(targetFrameworkInfo.Dependencies);
foreach (var dependency in dependencies)
{
if (dependency.LibraryRange.IsGacOrFrameworkReference)
{
lockFileLib.FrameworkAssemblies.Add(
LibraryRange.GetAssemblyName(dependency.LibraryRange.Name));
}
else
{
lockFileLib.Dependencies.Add(new PackageDependency(
dependency.LibraryRange.Name,
dependency.LibraryRange.VersionRange));
}
}
return lockFileLib;
}
示例2: SelectCompatibleFrameworks
private IEnumerable<FrameworkName> SelectCompatibleFrameworks(PublishRoot root, Runtime.Project project, IEnumerable<FrameworkName> requestedFrameworks)
{
var selectedFrameworks = new List<FrameworkName>();
foreach (var framework in requestedFrameworks)
{
var selectedFramework = project.GetCompatibleTargetFramework(framework);
if (selectedFramework == null)
{
root.Reports.WriteError($"Unable to build {project.Name}. It is not compatible with the requested target framework: {framework}");
return null;
}
selectedFrameworks.Add(selectedFramework.FrameworkName);
}
return selectedFrameworks;
}