project.json解决方案项目参考

时间:2015-03-09 18:57:09

标签: c# asp.net asp.net-core

我正在使用ASP.NET 5(vNext),我希望将project.json文件的引用添加到我的数据库项目中。这是:

project.json

{
    "webroot": "wwwroot",
    "version": "1.0.0-*",
    "exclude": [
        "wwwroot"
    ],
    "packExclude": [
        "**.kproj",
        "**.user",
        "**.vspscc"
    ],
    "dependencies": {
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta1",
        "EntityFramework.Commands": "7.0.0-beta1",
        "EntityFramework": "7.0.0-beta1",
        "EntityFramework.SqlServer": "7.0.0-beta1",
        "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta1",
        "Microsoft.AspNet.Security.Cookies": "1.0.0-beta1",
        "DataManagement": ""    <----- THIS IS MY PROJECT WITHIN SOLUTION
    },
    "frameworks": {
        "aspnet50": { },
        "aspnetcore50": { }
    }
}

DataManagement项目只是类库,但我尝试使用 ASP.NET 5类库。两种项目类型都失败了,这就是我在visual studio中看到的:

Solution View

Project正在构建并生成(当然)Datamanagement.dll,但Web项目找不到此库。

确切地说,下面是两个项目的目标版本:

DataManagement: KRE-CLR-x86.1.0.0-rc1-10846
Web:            KRE-CLR-x86.1.0.0-rc1-10846

2 个答案:

答案 0 :(得分:12)

默认情况下,两个项目都需要具有相同的父文件夹。

例如,此模式有效:

  • /mysolution/project1/project.json
  • /mysolution/project2/project.json

但这不会:

  • /mysolution/sub1/project1/project.json
  • /mysolution/sub2/project2/project.json

通常最简单的方法是确保两个项目具有相同的公共父文件夹。

但是,如果他们不能,您可以将global.json文件添加到“solution”文件夹中,并指明源位于何处:

{
    "sources": ["sub1", "sub2"]
}

答案 1 :(得分:1)

您必须指定版本。尝试:

"DataManagement": "1.0.0-*"