繁体   English   中英

引用新类库(包)的ASP.NET 5 Web应用程序

[英]ASP.NET 5 Web Application that references the new Class Library (package)

我正在创建一个包含针对以下框架的ASP.NET 5 MVC Web App的大型解决方案:

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

我在我的业务层,数据层等解决方案中有几个新的类库(包)。所有这些库都针对以下框架:

  "frameworks": {
    "net451": { },
    "dotnet5.4": {
      "dependencies": {
        "Microsoft.CSharp": "4.0.1-beta-23516",
        "System.Collections": "4.0.11-beta-23516",
        "System.Linq": "4.0.1-beta-23516",
        "System.Runtime": "4.0.21-beta-23516",
        "System.Threading": "4.0.11-beta-23516"
      }
    }
  }

我有一些测试项目针对以下框架,就像我的MVC Web应用程序一样:

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

经过大量的研究后,我发现任何像我的mvc应用程序和测试库这样的项目都应该以dnx为目标,而作为类库的项目应该只保留默认值并定位net / dotnet5.4。

有人可以告诉我我做错了什么,因为从我的MVC Web应用程序我无法引用我的类库(DAL,BLL)中的项目,除非我向他们添加dnx451 ...

您的Web应用程序中有“dnxcore50” ,而dll中有“dotnet5.4” ,它们可能是不同的引用库集。 您的类库应该以“dnxcore50”为目标,或者您的Web应用程序应该以“dotnet5.4”为目标,包含所有依赖项

我只是解决了类似的问题。

实际上,问题不在于无法引用您的类库,而是缺乏Intellisense的支持。 您可以在应用程序的project.json中手动引用类库,然后在应用程序中使用类库中的类。 应用程序将构建并运行良好。 至少我的建造和运行。 但VS仍然会用红色突出显示类库的类,并显示“无法解析符号”警告消息。

为了添加对Intellisense的支持,我从应用程序的project.json中删除了“dnxcore50”并添加了“net451”。 所以,现在我在应用程序中有以下project.json:

  "frameworks": {
    "net451": { },
    "dnx451": { }
  },

我不能只引用“net451”,因为我无法启动应用程序。 DNX只退出代码1.但是对于Intellisense支持的“net451”和DNX支持的“dnx451”,我能够继续处理我的项目并等待ASP.NET Core的RC2中的正确解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM