【发布时间】:2015-04-14 22:09:03
【问题描述】:
我正在开发一个 ASP.Net MVC 5 应用程序,它将成为我的客户的 SaaS。我想使用 EF6,我目前正在使用 localDb。我是一个实体框架初学者,我很难学习它。过去 2 天我一直在网上搜索,找到了不同的方法,但从未找到可以回答我问题的明确方法。
我在 ASP.Net MVC 4 和 5 上遵循 Scott Allen 教程,所以目前,我有 2 个上下文,“IdendityDbContext”和“MyAppDbContext”都使用名为 MyAppDb.mdf 的数据库指向 DefaultConnection 字符串
我希望我的客户能够登录网站并连接到他们自己的数据库,因此我计划为我的每个客户创建一个新的 ConnectionString(和数据库),并使用我的为我的客户帐户信息保留一个 ConnectionString IdendityDbContext。
我有很多问题,但这里有两个最重要的问题:
1) 我不确定如何在本地进行测试。我是否必须为所有客户端创建新的数据连接,当客户端连接时,我动态编辑连接字符串并将其传递给“MyAppContext”?
2) 即使我能够做到这一点,假设我有 200 个客户,这意味着我将拥有 201 个数据库:1 个帐户数据库 (IdentityDbContext) 和 200 个客户数据库 (MyAppDbContext)。如果我将来更改模型,是否意味着我必须为 200 个数据库中的每一个运行包管理器控制台迁移命令行?这似乎很残酷。必须有一种方法可以在每个客户端数据库上轻松传播我的模型,对吧?
抱歉发了这么长的帖子,提前非常感谢您。
【问题讨论】:
-
请一次问一个问题。这两个问题非常不同。
标签: asp.net-mvc-5 connection-string entity-framework-6 database-migration dbcontext