我以前开发过用于特定实现的MVC应用程序,多个用户都使用相同的数据。我现在正在考虑开发一个应用程序,我打算出售多个托管副本。例如,假设我开发了一个事件管理应用程序,公司可以在其中注册、添加事件、创建用户等。我如何为不同的客户托管此应用程序的多个实例?我能看到的方法有:
1)对于每个新客户,使用Azure创建新的网站/数据库实例并上载应用程序。缺点是托管成本很快就会增加。
2)在同一个应用程序中托管所有客户端,并编辑我所做的每个数据查询,以添加一个WHERE子句来检查每个表上的公司ID。
3)在数据库上使用视图/同义词,这样用户只能看到自己的数据。
实现这一目标的最佳方法是什么?有没有我没有想过的更好的方法?MVC有没有内置的东西可以处理这个问题?
发布于 2014-05-22 05:42:14
我已经为同样的场景用MVC开发了一个应用程序。我们已经使用SMO (服务器管理对象)为我的应用程序创建了一个新用户。
实际情况如下: 1)向具有不同数据库的多个用户发送信号应用程序。2)应用程序根据创建新客户端(使用SMO)按需创建数据库。3)当用户登录我们的应用程序时,数据库连接字符串会在运行时发生变化。
我认为这些信息对于具有多个数据库开发人员信号应用程序来说已经足够了,
我希望这对你有用。
谢谢,Nikunj B. Balar
https://stackoverflow.com/questions/23795408
复制