【发布时间】:2016-12-07 10:21:49
【问题描述】:
- 将 edmx EF Core 用作 Oracle 数据库的 DAL 的 dll 库
- 引用上述 dll 的业务逻辑库
- 引用业务逻辑 dll 的 ASP.NET Core Web 服务应用程序
所有三个都针对相同版本的 .NET 框架:4.6.1
为了让 web 服务工作并访问数据库,我必须将 App.config 文件从 EntityFramework 项目复制到 Webservice 项目。
在我决定从 ASP.NET 5 RC1 迁移到 ASP.NET Core 1.0 之前,一切正常。
迁移后 web.config 出现在 webservice 项目根目录中(除了 wwwroot 文件夹下的那个),我遇到了提到的错误 here 显然是因为现在我有两个配置文件(app. config 和 web.config),删除 app.config 的解决方案是有意义的。
所以我将 app.config 中的所有部分复制到 web.config 并删除了 app.config,这解决了我的第一个问题,但现在每当我尝试使用 DBContext 时,我都会遇到这个问题例外:
“System.InvalidOperationException”类型的异常发生在 EntityFramework.dll 但未在用户代码中处理
附加信息:没有命名的连接字符串 'DBEntities' 可以在应用程序配置文件中找到。
我注意到在发布应用程序后,文件 myApp.exe.config 不再具有连接字符串。我的问题很简单,如何让应用程序在 web.config 中查找连接字符串?!
【问题讨论】:
-
Webservice 是指 SOAP/WCF? ASP.NET Core iirc 不支持此方案。 ASP.NET Core 仅支持 Rest (WebApi)、MVC 和 SignalR(仍处于早期测试阶段)
-
@Tseng VS2015 中没有 WebAPI 项目类型。不都是 MVC 中的 WebAPI 吗?
-
它们都在同一个包中,并且开箱即用。尽管如此,WebApi 和 MVC 在使用上还是有细微的差别:WebApi 路由通常没有动作并且使用 http 动词,并且返回的
IActionResult类型在 WebApi 中是不同的。但是仍然没有答案,您将哪些技术用作“Webservice”。 Webservice 通常指的是 WCF/Soap 这就是我问的原因,因为它在 ASP.NET Core 项目中不受支持 -
@Tseng 它是基于 http 的 webapi 而不是 wcf
标签: .net entity-framework asp.net-core