2011-05-03 102 views
2

大家好: 我正在使用C#/ MVC3/Razor构建一个应用程序,该应用程序在web.config中配置了一个数据库。其中一个要求是将数据推送到另一个数据库。这是可以在MVC3框架内实现,还是应该使用标准方法/ sql /连接到第二个数据库?ASP.NET MVC3多个数据库

感谢

回答

4

你可以在你的web.config第二个连接字符串和配置您的ORM框架或任何你正在使用访问这些数据库,使用第二个连接字符串:

<connectionStrings> 
    <add name="db1" connectionString="Data Source=serverName;Initial Catalog=dbName1;User Id=foo;Password=secret;" providerName="System.Data.SqlClient" /> 
    <add name="db2" connectionString="Data Source=otherServerName;Initial Catalog=dbName2;User Id=bar;Password=secret;" providerName="System.Data.SqlClient" /> 
</connectionStrings> 

刚有一件事要记住:ADO.NET Connection Pool是每个应用程序域和每个连接字符串,这意味着在这种情况下会有两个独立的连接池。

0
<connectionStrings> 
    <add name="First_DB_Conn" connectionString="" providerName="Some_Provider" /> 
    <add name="Second_DB_Conn" connectionString="" providerName="Some_Provider" /> 
</connectionStrings> 

这样您就可以添加到另一个DBS

0

ASP.NET MVC本身包含任何关于数据库(或任何形式的底层持久层)以上的连接。在MVC3工具更新中,开发人员的某些工具确实直接使用了Entity Framework 4.1的“代码优先”功能。如果您的应用程序没有映射到脚手架假定的CRUD操作,那么后者将是必需的(例如,您自己的T4模板或不同的脚手架或完全忽略(手动编写所有持久性逻辑)

自己做,可以在不同的数据库中使用多个ADO.NET连接(在.config文件中有多个连接字符串)或多个ORM模型。