Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net VS2015无法引用项目依赖项_.net_Visual Studio 2015_Dependency Management_Portable Class Library - Fatal编程技术网

.net VS2015无法引用项目依赖项

.net VS2015无法引用项目依赖项,.net,visual-studio-2015,dependency-management,portable-class-library,.net,Visual Studio 2015,Dependency Management,Portable Class Library,我试图将解决方案中的类库项目引用到一个简单的控制台应用程序。但Visual Studio似乎不让我这么做 我四处搜索,不断寻找关于如何添加依赖项的指南,但似乎没有人有相同的问题,因为依赖项已经添加到项目中 如果您查看上图,您将看到这只是一个普通的项目,全新的控制台应用程序,带有一个类库,除了依赖项之外没有任何编辑,还有一行试图从类库引用Class1.cs 我收到一条intellisense消息,建议我向项目添加引用,如果我单击它,什么也不会发生 您也可以看到,我试图手动添加using语句,但没

我试图将解决方案中的类库项目引用到一个简单的控制台应用程序。但Visual Studio似乎不让我这么做

我四处搜索,不断寻找关于如何添加依赖项的指南,但似乎没有人有相同的问题,因为依赖项已经添加到项目中

如果您查看上图,您将看到这只是一个普通的项目,全新的控制台应用程序,带有一个类库,除了依赖项之外没有任何编辑,还有一行试图从类库引用Class1.cs

我收到一条intellisense消息,建议我向项目添加引用,如果我单击它,什么也不会发生

您也可以看到,我试图手动添加using语句,但没有成功。它只是说“无法解析符号ClassLibrary1”

显示我为项目添加依赖项的图像

显示我已尝试添加项目引用的图像

现在,所有这些比因说。同样的事情也发生在我想处理的项目上,但是在那个项目上,当我尝试将类库添加为引用时,我只得到消息“不能将项目X添加为引用”。但是我可以添加依赖项,但是,它基本上给了我与这个干净项目相同的错误

我正在使用Visual Studio 2015-企业版

Class Library Project.json: 
    {
      "version": "1.0.0-*",
      "description": "ClassLibrary1 Class Library",
      "authors": [ "Tweek" ],
      "tags": [ "" ],
      "projectUrl": "",
      "licenseUrl": "",

      "dependencies": {
        "System.Collections": "4.0.10-beta-23019",
        "System.Linq": "4.0.0-beta-23019",
        "System.Threading": "4.0.10-beta-23019",
        "System.Runtime": "4.0.10-beta-23019",
        "Microsoft.CSharp": "4.0.0-beta-23019"
      },

      "frameworks": {
        "dotnet": { }
      }
    }
按照其中一个答案中的建议进行编辑后的ConsoleApp1 Project.json:

    {
  "version": "1.0.0-*",
  "description": "ConsoleApp1 Console Application",
  "authors": [ "Tweek" ],
  "tags": [ "" ],
  "projectUrl": "",
  "licenseUrl": "",

  "dependencies": {
  },

  "commands": {
    "ConsoleApp1": "ConsoleApp1"
  },

  "frameworks": {
    "dnx451": {
      "dependencies": {
        "ClassLibrary1": "1.0.0-*"
      }
    }
  }
}

非常感谢您的帮助

您的控制台应用程序的目标是
DNX 4.5.1
,它是新ASP.NET运行时的一部分。如果创建的类库以.NET 4.5为目标,则可能由于新框架而不兼容

您可以通过使用新的
类库(包)
项目创建类库来解决这个问题,该项目可以针对新的框架

或者,编辑console应用程序的
project.json
,从
frameworks
部分删除
dnxcore50
,并添加对库的引用:

{
    ...
    "frameworks": {
        "dnx451": {
            "dependencies": {
                "ClassLibrary1": "1.0.0-*"
            }
        }
    }
}

找到了问题的解决方案-

您必须使用“Windows”下的“类库”或“类库(便携)”


显示当我创建新解决方案时出现的窗口,该窗口告诉我我正在使用您提到的
类库(包)
。它的目标是.NET4.5.2,它在窗口中显示DNX4.5.1,正如您所提到的,我从框架中删除了dnxcore50,但没有结果。我已经用project.json文件更新了这个问题。您可以尝试两件事:将类库的框架从
dotnet
更新为
dnx451
,并将依赖项从
dnx451
小节移动到主依赖项部分。我不认为这两种方法都会有什么不同,但值得一试。好吧,所以将dotnet更新为dnx451是可行的,但对于我有一个MVC应用程序和一个类库(刚开箱即用)的原始问题,情况并非如此。似乎Web应用程序没有对DNX 4.5.2/1的引用