如何在ASP.NET 5 Preview中添加对其他项目的引用?

时间:2015-07-24 22:40:36

标签: visual-studio nuget asp.net-core asp.net-core-mvc

在Visual Studio 2015解决方案中,我有一个文件夹结构,如下所示:

 -src
    -Project.Models
       (...)
       -MyModel.cs
    -Project.Web
       (...)
       -Controllers
         -MyControllers.cs
       -Dependencies
       -project.json

其中Project.Web是ASP.NET 5 Web API项目,Project.Models是ASP.NET 5类库。

现在,我想在MyModel Project.Models MyController中使用Project.Web using Project.Models。为此,我需要从Web项目中引用Models项目。我不能在这里工作。 Models语句一直以红色突出显示Project.Models部分,因为无法找到程序集引用。

The problem visualized

我尝试了什么:

  • 通常的“添加引用”与使用声明
  • 相结合
  • 创建Project.Models的NuGet包(通过在属性中指定“Compile on built”),将NuGet包添加到本地存储库并在project.json中引用它。

重启Visual Studio后,这两件事似乎都不起作用。

有人可以向我解释如何从Project.Web完成{ "webroot": "wwwroot", "version": "1.0.0-*", "dependencies": { "Microsoft.AspNet.Mvc": "6.0.0-beta5", "Microsoft.AspNet.Server.IIS": "1.0.0-beta5", "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5", "Microsoft.AspNet.StaticFiles": "1.0.0-beta5", "Microsoft.AspNet.Loader.IIS": "1.0.0-beta5", "Microsoft.AspNet.Loader.IIS.Interop": "1.0.0-beta5", "Microsoft.Framework.Runtime": "1.0.0-beta5", "Microsoft.AspNet.Mvc.Xml": "6.0.0-beta5", "MongoDB.Driver": "2.0.1" }, "commands": { "web": "Microsoft.AspNet.Hosting --config hosting.ini" }, "frameworks": { "dnx451": { } }, "exclude": [ "wwwroot", "node_modules", "bower_components" ], "publishExclude": [ "node_modules", "bower_components", "**.xproj", "**.user", "**.vspscc" ] } 的引用吗?

/编辑包含project.json:

{
    "projects": [ "src", "test" ],
    "sdk": {
        "version": "1.0.0-beta5",
        "runtime": "coreclr",
        "architecture": "x86"
    }
}

和global.json

int count = 0;
char tab = "\t";
foreach(char c in tab) 
{
    if(char.IsTab(c)) 
    {
        count++;
    }
}

1 个答案:

答案 0 :(得分:0)

问题是我使用的是.NET Core。当我更改project.json文件中的框架条目以使用

"dnx451": { }

而不是

"dnxcore50": { }

再次包括参考文献(图像的红色变为黑色)。似乎.NET核心(但?)支持所有软件包。