我正在尝试使用 EF 4.3 迁移功能。我的 ASP.NET MVC 项目将连接字符串存储在外部文件中:
<connectionStrings configSource="bin\connections.config" />
所有运行时过程(包括自动迁移)都可以正常工作。但是,连接到数据库的 powershell commandlet 无法找到外部文件。它抛出“无法打开 configSource 文件”异常。我试图将 .config 文件放在不同的地方,以及更改配置的外部文件位置无济于事。有没有可用的解决方法?
更新:我发现 EF 创建了一个临时 AppDomain,配置文件位于 temp 目录中。所以目前唯一的解决方法似乎是将外部配置放在同一个临时目录中。还有其他建议吗?
最佳答案
不幸的是,在 EF 迁移中没有简单的方法来使用 powershell cmd-lets 处理外部 configSource
文件。我已经放弃了,并将连接字符串移动到包含 db 代码的类库的配置文件中。另一种方法是,正如您发现自己手动复制文件一样。不幸的是,复制过程不遵守项目的build设置,因此将外部配置文件设置为在构建时复制无济于事。
EF 4.3.1 支持 configSource
。
关于entity-framework - EF 4.3 迁移抛出 "Unable to open configSource file",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9264019/