Skip to main content
 首页 » 编程设计

c#之ASP.NET 5 Web API 项目模板不允许使用 Entity Framework

2024年05月06日43wayfarer

使用 VS2015 企业版,我使用 ASP.NET 5 Web API 模板创建了一个网络应用程序,如下所示。但是,当我尝试安装 Entity Framework 时,它会在 References\DNX Core 5.0 文件夹下显示 EntityFramework(如 figure 2 here 所示),并带有一个错误图标,表明 DNX Core 5.0 不支持 EF。但是当我从此文件夹中卸载 EF 时,它也会从 References\DNX 4.5.1 文件夹中删除它。 问题:如何在 ASP.NET 5 Web API 项目中使用 EF?

project.json 文件:

{ 
  "version": "1.0.0-*", 
  "compilationOptions": { 
    "emitEntryPoint": true 
  }, 
 
  "dependencies": { 
    "Microsoft.ApplicationInsights.AspNet": "1.0.0-rc1", 
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final", 
    "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Configuration.FileProviderExtensions": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Logging": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Logging.Console": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Logging.Debug": "1.0.0-rc1-final" 
  }, 
 
  "commands": { 
    "web": "Microsoft.AspNet.Server.Kestrel", 
  }, 
 
  "frameworks": { 
    "dnx451": { }, 
    "dnxcore50": { } 
  }, 
 
  "exclude": [ 
    "wwwroot", 
    "node_modules" 
  ], 
  "publishExclude": [ 
    "**.user", 
    "**.vspscc" 
  ] 
} 

请您参考如下方法:

EF 6 与 .Net core 不兼容。或者,从 project.json
中支持的框架中删除 "dnxcore50": { } 有关将 EF 6 与 ASP.NET Core 结合使用的更多信息,请访问:Getting Started with ASP.NET 5 and Entity Framework 6

或使用 EF 7 :访问 Getting Started on ASP.NET 5