Visual Studio 2017 参考管理器为空。

12

我正在尝试在Visual Studio 2017社区版中添加对System.Configuration程序集的引用。 我的目标是.net 4.5版本和.net classic。 然而,我在引用管理器中找不到任何程序集。

我是否遗漏了什么? 标准框架程序集在哪里? 框架选项卡为空,这是正常现象吗?

输入图像描述


@HansPassant 我的项目是一个使用.NET Framework的“类库(.NET Framework)”,使用的是.NET 4.5,在项目创建后变成了1.4的名称。我不明白你的意思是什么。 - Oscar
非凡的主张需要非凡的证据,我没有看到任何证据。有太多的类库项目可供选择,而且名称相似,因此误点是非常容易的。 - Hans Passant
2个回答

11

针对 .NETStandard 1.4

这不是 ".net classic",你选择了一个自VS2017可用的新项目模板。 .NETStandard与旧版PCL非常相似,它可以帮助您创建可在多个平台上使用的便携式类库。它比PCL更好,您不必再选择要支持的具体平台。由于是“标准”,您可能会选择到的所有框架程序集都已包含在内,这就是为空的原因。PCL的工作方式也是如此。

请注意,有很多类库项目模板可以选择,选择错误很容易发生。您必须选择名为“Class Library (.NET Framework)”的那个,它针对传统的桌面版本,提供了一个非空列表供您选择。


2
你好,感谢你的帮助。我确信我选择了 .Net Standard 而不是 Net Core。这是我选择项目创建的内容:http://imgur.com/XibXg3R。 - Oscar
正确,那是错误的。请注意模板名称与“类库(.NET Framework)”并不相似。.NETStandard是一种非常不同的类型,具有糟糕的非描述性名称和太多可供选择的标准,它替代了PCL。 - Hans Passant
事实上,您可以在我的问题图像中看到,在引用管理器的左上角,它显示“针对 .Net Standard 1.4”。 - Oscar
1
我该如何在VS2017中针对.Net经典框架进行开发? - Oscar
1
选择“Windows经典桌面”节点。 “经典”,正是你要找的。 点击更多,了解情况。 - Hans Passant
好的,我明白你的意思。有一个选项可以添加 .Net Core、.Net Standard 和 Windows Classic Desktop 项目。命名约定真的很混乱 :-( - Oscar

7
我忽略了这是一个.NET Framework目标项目,而不是.NET CORE。
请查看下面的程序集位置。 .NET Framework

这个个人观点如何帮助OP解决他的问题? - ZF007
欢迎来到SO。感谢您发布答案。请阅读关于如何提出好问题的信息。享受SO的乐趣;-) - ZF007
1
谢谢!除了你的参考,我没有找到其他关于.NET Framework和.NET Core控制台应用程序之间差异的资料。将项目设置为“Console App .NET Framework”会在“引用管理器”中显示“程序集”。作为“.NET Core”应用程序,您无法在引用管理器中添加程序集。 - P.O.W.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接