EF操作多数据库

1.Account3_Register_DB_Model作为(空)模板库,根据此模板生成的其他数据除了数据库名称不一样,其他表,视图,字段等等都一致

2.Account3_Platform_Master数据库记录各个数据库的名称,连接该数据库的账号密码等基础信息

3.分别根据Account3_Register_DB_Model以及Account3_Platform_Master生成对应的数据库模型

4.将生成得到的Account3_Register_DB_Model.edmx展开并且打开Account3_Register_DB_ModelEntities可以看到

        public Account3_Register_DB_ModelEntities()

            : base("name=Account3_Register_DB_ModelEntities")

        {

        }

构造方法没有任何参数,name=Account3_Register_DB_ModelEntities其实就是对应的app.config 的connectionStrings.(因为两个数据库模型,所以app.config会有

Account3_Platform_MasterEntities以及Account3_Register_DB_ModelEntities的连接数据库的基本信息

)

 

5.新建Account3_Register_DB_ModelEntities.cs类文件,对应的edmx同类名文件的构造方法,代码

using System;

using System.Collections.Generic;

using System.Data.Entity;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace EFACCPCLib.DataAccess

{

    public partial class Account3_Register_DB_ModelEntities : DbContext

    {

        public Account3_Register_DB_ModelEntities(string connectionString)

            : base(connectionString)

        {

            this.Configuration.LazyLoadingEnabled = false;

        }

    }

}

 

connectionString:格式与app.config的类似。数据库名称账号密码可以通过master数据库获取,最终组装合适的连接字符串

 

posted @ 2017-01-03 18:27  justqi  阅读(3848)  评论(0编辑  收藏  举报