【问题标题】:Change the connection string of the database first entity model更改数据库第一实体模型的连接字符串
【发布时间】:2014-10-12 20:27:36
【问题描述】:

我有一个使用 Entity Framework 6 的 ASP.NET 网站。我使用 Database First 方法创建模型并使用 EntitesToDTOs 为所有表创建 DTO。现在我需要能够轻松更改它使用的数据库。数据库基本上是彼此的副本,但是它们通过不同的连接字符串彼此分开。

现在我可以通过手动更改配置文件中的连接字符串来切换数据库。有 3 个配置文件需要更改。

  1. 网站项目中的Web.config(参考和使用#2)
  2. DataAccess 项目中的App.config(参考和使用#3)
  3. DatabaseModel 项目中的 App.config(包含实体模型)

每个配置文件的以下部分是手动修改的。

<?xml version="1.0" encoding="utf-8"?>
<configuration>

  ...

  <connectionStrings>
    <!-- Entity Framework Connection Strings - Uncomment the one in use -->

    <!-- Entities Database 1 -->
    <add name="ClientEntities" connectionString="metadata=res://*/ClientModel.csdl|res://*/ClientModel.ssdl|res://*/ClientModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=...connection string info...;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />

    <!-- Entities Database 2 -->
    <!--<add name="ClientEntities" connectionString="metadata=res://*/ClientModel.csdl|res://*/ClientModel.ssdl|res://*/ClientModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=...connection string info...;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />-->
  </connectionStrings>
</configuration>

有没有办法自动化这个过程或以编程方式完成所有事情,也许基于 web.config 文件中的常规连接字符串?

这是 Web.config 文件中的常规连接字符串,它反映了需要使用的实体数据库。

<add name="Database1" connectionString="..." providerName="System.Data.SqlClient" />

【问题讨论】:

    标签: asp.net entity-framework connection-string


    【解决方案1】:

    听起来好像您想针对不同的场景使用不同的构建配置。您可以使用 Web.config transformations 轻松地为 Web 管理它,并且使用 this tutorial 相同的过程适用于其他 .NET 项目。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-08
      • 1970-01-01
      • 2010-12-25
      • 2023-03-07
      • 1970-01-01
      • 2020-03-26
      • 1970-01-01
      相关资源
      最近更新 更多