繁体   English   中英

具有Microsoft SQL Server的实体框架7在Docker中不起作用

[英]Entity framework 7 with Microsoft SQL server not working in Docker

我在asp.net 5中将EntityFramework 7与Microsoft SQL服务器一起使用。我在使用EntityFramework.MicrosoftSqlServer:7.0.0-rc1-final。 当我在Visual Studio中运行Web应用程序时,一切正常。 但是,我想在Docker中运行我的应用程序。 我正在使用官方Docker映像运行asp.net应用程序:microsoft / aspnet:1.0.0-rc1-update1-coreclr

这是我的dockerfile:

从Microsoft / aspnet:1.0.0-rc1-update1-coreclr

复制project.json / app /

WORKDIR / app

RUN [“ dnu”,“ restore”]

复制。 / app

ARG CONTAINER_PORT = 5000

ARG SERVER_URLS = http:// *:$ CONTAINER_PORT

ENV SERVER.URLS $ SERVER_URLS

曝光$ CONTAINER_PORT

ENTRYPOINT [“ dnx”,“-p”,“ project.json”,“ web”]

在docker中构建成功,但是当我运行应用程序时,在应用程序启动后出现以下错误:

应用程序启动异常:System.IO.FileLoadException:无法加载文件或程序集'app,Culture = neutral,PublicKeyToken = null'或其依赖项之一。 一般异常(来自HRESULT的异常:0x80131500)[36mwebapi_1 | [0mFile名称:'app,Culture = neutral,PublicKeyToken = null'---> Microsoft.Dnx.Compilation.CSharp.RoslynCompilationException:/app/Startup.cs(33,18):DNXCore,Version = v5.0错误CS1061 :'EntityFrameworkServicesBuilder'不包含'AddSqlServer'的定义,并且找不到扩展方法'AddSqlServer'接受类型为'EntityFrameworkServicesBuilder'的第一个参数(您是否缺少using指令或程序集引用?)

问题似乎出在'AddSqlServer'命令中。 奇怪的是,它是在从Visual Studio构建和缩小时起作用的。 有人知道这个问题吗?

谢谢。

尝试与Docker主机显式共享驱动器。 如果您使用的是docker-machine,则位于Virtual Box中默认设置下。 如果您拥有Docker for Windows beta,则可以在任务栏图标的设置中进行操作。 可能不是缺少扩展方法,只是Docker无法访问它。

暂无
暂无

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

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