您的位置:首页 > 运维架构 > 网站架构

经验总结26--EF6多网站使用一个数据库

2014-08-19 11:35 295 查看
当使用EF生成数据库后,想多个网站使用同一个数据库,并且进行前台后台分离,或者以后进行app扩展使用。

但尝试分离后,发现第二个网站访问数据库时,会提示进行数据库结构改变,需要迁移的错误。

但并未使用过数据库迁移,也是重新生成的数据库。

后面同事查阅资料和研究,才发现是数据库初始化的问题。

Database.SetInitializer<PermissionContext>(null);

该代码是必须要执行一次的,一般新的网站,必须进行数据库初始化,可为空,没有啥意义,报错也是牛马不相及。

如果EF可以默认已经执行该代码,一旦有初始化需求,再进行重写即可。

但目前不支持这样的功能,那就自己手动加上吧。

步骤:

1、老网站还是不变,生成数据库。

2、新网站,加上代码即可。

public UserContext(string nameOrConnectionString)

: base(nameOrConnectionString)

{

Database.SetInitializer<PermissionContext>(null);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: