从ASP.NET CORE中的appsettings.json文件中读取实体框架6连接字符串

时间:2017-01-25 19:46:11

标签: asp.net-core entity-framework-6 appsettings

我有一个app.config xml文件来保存实体框架的连接字符串,如下例所示:

<configuration>
    <connectionStrings>
        <add name="MyEntities" connectionString="metadata=res://*/EntityFramework.MyEntities.csdl|res://*/EntityFramework.MyEntities.ssdl|res://*/EntityFramework.MyEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=myserver;initial catalog=Example;persist security info=True;user id=myId;password=myPassword;multipleactiveresultsets=false;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
    </connectionStrings>
</configuration>

但我正在使用ASP.NET Core,我使用环境变量管理多个服务器。所以我需要在我的appsettings中保存这个连接字符串。{enviroment} .json,读取此连接并设置为属性实体框架上下文。

2 个答案:

答案 0 :(得分:0)

不确定这是否是正确的方法,但这可能是一个很好的起点。我已将配置设置添加到名为app.config的文件中。看来文件中的内容被写入exe的配置文件中。执行exe时,还会加载配置设置。我刚刚开始尝试.NET Core,所以这可能不是推荐或正确的方法。

<configuration>
   <runtime>
      <gcServer enabled="true"/>
   </runtime>
  <connectionStrings>
    <add name="TestName" connectionString="data source=MyServer;initial catalog=MyDatabase;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

答案 1 :(得分:0)

我认为你正在寻找类似以下结构的东西。

  "ConnectionStrings": {
    "MyEntities": "metadata=res://*/EntityFramework.MyEntities.csdl|res://*/EntityFramework.MyEntities.ssdl|res://*/EntityFramework.MyEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=myserver;initial catalog=Example;persist security info=True;user id=myId;password=myPassword;multipleactiveresultsets=false;application name=EntityFramework"
  }