是否有可能从针对System.Windows.Forms
的Sdk项目(VS 2017)引用net462
?类似的东西:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net462</TargetFrameworks>
...
</PropertyGroup>
<PackageReference Include="System.Windows.Forms" Version="4.0.0" />
...
或者概括一下这个问题:如何从Sdk项目中使用驻留在GAC中的系统库?根据{{3}},它似乎不是开箱即用的支持。
让我感到困惑的部分是,定位net462
会让人觉得有人可以访问完整的框架。但是,如果GAC程序集是一个问题,那么框架就不再那么“完整”了。因此,我的问题。
答案 0 :(得分:3)
以下编译:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Reference Include="System.Windows.Forms" />
</ItemGroup>
</Project>
using System.Windows.Forms;
namespace ClassLibrary1
{
public class Class1
{
public Class1()
{
var form = new Form();
}
}
}
注意:您可以通过在解决方案资源管理器中右键单击“依赖关系”并选择“添加引用”,而不是直接编辑项目文件,而是以与在Framework项目中相同的方式添加这些引用。单击Assemblies,然后单击Framework,并选择所需的程序集。