无法将依赖项添加到.NET核心项目

时间:2016-12-24 23:00:42

标签: c# visual-studio-2015 asp.net-core

我有一个小型测试.NET核心项目,它本质上是一个休息接口。

该项目创建为:

ASP.NET Core Web Application (.NET Framework)

我想使用来自名为 Common

的模块的外部类

所以,我右键单击依赖项,Visual studio向我显示解决方案中的所有项目,然后选择 Common ;本质上是添加依赖项的标准步骤。

这会修改文件 project.json 并添加以下内容:

"frameworks": {
    "net462": {
        "dependencies": {
            "Common": {
                "target": "project"
            }
        }
    }
},

但是,当我编译时,我收到以下错误:

project.json(25,23): error NU1001: The dependency Common could not be resolved.

依赖项是通过菜单添加的,就像我将依赖项添加到任何其他项目一样。 .NET Core中有什么完全不同的东西吗?

2 个答案:

答案 0 :(得分:1)

所以,我发现整个事情都被烘焙了一半,其他许多人正在努力解决同样的问题;它只是在我的搜索中改变了措辞,发现.NET核心不允许外部依赖,除非它们采用NuGet包的形式。 IDE并没有反映出这一点,看起来整个事情正在进行中。

一些有用的链接:

.net core 1.0 visual studio referencing external dll

How to add project reference to ASP.NET Core 1.0 MVC project

答案 1 :(得分:0)

如果您手动编辑project.json的依赖项部分并添加dll名称和版本,它将被选中并可用。

所以我创建了WebAPI项目和一个名为ClassLibrary的类库项目......然后将ClassLibrary作为对webapi项目的project.json的依赖。

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },
    "Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.1",    
    "ClassLibrary": "1.0.0"
  }
....}

虽然我在Linux而不是Windows上测试了这个,但我认为它不应该有太大不同。