在.NET 4.6.1上运行ASP.NET Core 1.0网站时,依赖项不起作用

本文关键字:NET 网站 依赖 不起作用 ASP 运行 Core | 更新日期: 2023-09-27 17:59:08

在我的解决方案中,我有以下项目

解决方案"NewCo"

  • NewCo.DataAccess(类库,.NET 4.6.1)
  • NewCo.DomainModel(类库,.NET 4.6.1)
  • NewCo.IdentityModel(类库,.NET 4.6.1)
  • NewCo网站(ASP.NET核心Web应用程序,.NET 4.6.1)

这里是我的project.json文件中的一个片段,显示了框架和依赖项

"frameworks": {
    "netcoreapp1.0": {
        "imports": [
            "net461"
        ],
        "dependencies": {
            "NewCo.DataAccess": {
                "target": "project"
            },
            "NewCo.DomainModel": {
                "target": "project"
            },
            "NewCo.IdentityModel": {
                "target": "project"
            }
        }
    }
  },

当我尝试引用这些依赖项时,我似乎无法访问它们:

using NewCo... // intellisense only show me ".Website"

为什么我不能引用我的DataAccessDomainModelIdentityModel依赖项?

在.NET 4.6.1上运行ASP.NET Core 1.0网站时,依赖项不起作用

经过一番调查,我找到了一个很好的解决方案。

我的项目由一些经典的.NET类库组成,这些类库被ASP.NET Core web应用程序引用,以.NET 4.6.1为目标,并引用NETStandardLibrary 1.6.0

问题

对经典.NET类库的引用不起作用

解决方案

  1. 将经典.NET类库移植到.NET核心类库
  2. 所有项目的目标.NET 4.6.1,所有项目的参考NETStandardLibrary 1.6.0
  3. 在适用的情况下,参考类库中的nuget包(在我的案例中,这是实体框架6.1.3和用于实体框架的Microsoft Identity framework)
  4. 引用ASP.NET Core应用程序中的.NET Core类库

它对我很有效。我希望,如果你找到这个,它对你有用!