如何在VS 2015 / .NET 4.6中添加引用?

时间:2015-12-17 01:38:28

标签: visual-studio-2015 .net-4.5 asp.net-4.5 .net-4.6

VS 2015是否在如何添加引用方面发生了巨大变化?

我正在做一个MVC网络项目。我想在我的.NET 4.6应用程序中使用System.Configuration.ConfigurationManager。我转到References节点和Add Reference...并添加了System.Configuration 1.0.0.0。 Intellisense现在能够自动为ConfigurationManager提供属性和方法,例如ConfigurationManager.AppSettings

然而,当我尝试编译时,它说

  

CS0234名称空间“系统”中不存在类型或命名空间名称“配置”(您是否缺少程序集引用?)

如何在新的.NET Framework中完成任务?

当我将鼠标悬停在using System.Configuration语句上时,会出现一个带有黄色三角形和感叹号的气球文字,上面写着:

{} Namespace System.Configuration
  MyProject.DNX 4.5.1 - Available
  MyProject.DNX Core 5.0 - Not Available
You can use the navigation bar to switch context.

这意味着什么?

3 个答案:

答案 0 :(得分:2)

这意味着您已在DNX 4.5.1中定义了System.Configuration,这意味着DNX Core 5.0无法使用。

project.json文件告诉编译器DNX Core 5.0将是主要的目标框架。因此,如果System.Configuration命名空间在DNX Core 5.0中不可用,那么您将收到错误。

要解决此问题,您需要切换project.json

中定义的框架的顺序

来自:

"frameworks": {
    "dnxcore50": {
      },
      "dnx451": {
      }
   }

 "frameworks": {
        "dnx451": {
          },
          "dnxcore50": {
          }
       }

然后你告诉编译器你的主目标框架现在是DNX 4.5.1,它是一个更完整但依赖的框架(.NET Framework 4.5.1!= .NET Core)

.NET Core是.NET Framework的一个非常小的子集,对于在非Windows环境(如Linux和Mac)中运行应用程序非常有用。

如果您的目标是Windows环境,我强烈建议您定位DNX 4.5.1或4.6

答案 1 :(得分:0)

很抱歉,我仍然无法对目前的观点发表评论。

我建议您应该做的事情:

  • 添加定位您当前框架的参考(参考 - >添加参考 - >装配 - >框架 - > System.Configuration)
  • 尝试添加System.Configuration 4.0.0.0而不是1.0.0.0
  • 检查您是否使用System.Configuration添加了''在你的程序中或不是

我正在使用System.Configuration 4.0.0.0,它在Visual Studio 2015中运行良好

您可以在here

中查看更多内容

答案 2 :(得分:0)

消息您可以使用导航栏切换上下文。显示当您有使用添加为链接的文件的项目时(项目的上下文菜单,然后添加 - >现有项... - >添加为链接)。

示例:假设您在项目 ProjectA 中有一个名为 sample.cs 的C#文件,并且该文件被引用为链接在 ProjectB 中。然后在 sample.cs 中编写一些使用名为 Library 的库的代码。您还只能在 ProjectA 中引用此。所以 ProjectB 也应该引用该库。如果不是 - 则会显示以下消息:您可以使用导航栏切换上下文。完整示例消息:

{} Namespace Library
ProjectA 1.0.0 - Available
ProjectB 1.0.0 - Not Available
You can use the navigation bar to switch context.