3

我正在尝试使用 EF 4.3 迁移功能。我的 ASP.NET MVC 项目将连接字符串存储在外部文件中:

<connectionStrings configSource="bin\connections.config" />

所有运行时过程(包括自动迁移)都可以正常工作。但是,没有连接到数据库的 powershell commandlet 能够找到外部文件。它抛出“无法打开 configSource 文件”异常。我试图将 .config 文件放在不同的地方,以及更改配置的外部文件位置无济于事。有没有可用的解决方法?

更新:我发现 EF 创建了一个临时 AppDomain,其配置文件位于 temp 目录中。因此,目前唯一的解决方法似乎是将外部配置放在同一个临时目录中。还有其他建议吗?

4

2 回答 2

3

在这里使用 EF 6.1。

如果像我一样,您链接到位于另一个项目中的 connectionStrings.config 文件,而不是您的 Entity Framework 迁移项目(使用添加为链接),您可能需要将文件移回此 EF 项目并链接到移动的文件其他项目代替...

于 2017-03-31T10:15:36.590 回答
0

configSource不幸的是,在 EF 迁移中使用 powershell cmd-let处理外部文件并不容易。我已经放弃了,并将连接字符串移动到包含 db 代码的类库的配置文件中。另一种方法是,当您发现自己手动复制文件时。不幸的是,复制过程不遵守项目的构建设置,因此在构建时设置要复制的外部配置文件无济于事。

EF 4.3.1支持configSource.

于 2012-03-08T11:24:36.423 回答