实体数据模型无法遵循web.config中的configSource属性

时间:2014-01-08 16:12:23

标签: .net entity-framework web-config

web.config中,我们使用configSource元素的connectionStrings属性将连接字符串存储在单独的文件中,例如:

<connectionStrings configSource="web.connectionStrings.config" />

web.connectionStrings.config我们有:

<connectionStrings>
    <add name="DatabaseConnectionString" connectionString=" ... " />
</connectionStrings>

我刚刚向应用程序添加了实体数据模型。不幸的是,它坚持将自己的连接字符串添加到web.config中,将其保留为:

<connectionStrings configSource="web.connectionStrings.config">
    <add name="EFConnectionString" connectionString=" ... " />
</connectionStrings>

在运行时抛出以下错误:

  

使用'configSource'的部分可能不包含其他属性或元素。

EFConnectionString移动到web.connectionStrings.config解决了这个直接问题(并且数据库查询没有问题),但是当我需要刷新它或添加其他数据时,实体数据模型找不到它。

有没有办法告诉实体数据模型遵循configSource属性,或使用web.connectionStrings.config存储其连接字符串?

1 个答案:

答案 0 :(得分:0)

我从这个

更改了myDbContext的构造函数
public class myDbContext : DbContext
{
     public myDbContext():base("name=myDb")
    {
    }

到这个

public class myDbContext : DbContext
{
     public myDbContext():base("myDb")
    {
    }

并解决了问题。

我不知道myDbContext构造函数与configsource有什么关系。但这一改变解决了我的问题。