我希望理解如何创建一个ASP.NET MVC网站,作为VS2010解决方案中的一个项目,然后为多个“租户”创建一个从该网站继承的网站。这将使添加模块化功能变得更灵活,而不会影响其他网站,并且都可以从核心库优化中受益。
这是一个疯狂的想法吗?有什么模式可用于这种情况?我已经为基于WebForm的网站做过类似的事情(将DLL作为插件添加),但在MVC中没有。
“租户”是商业客户,每个客户已经拥有自己的MSSQL数据库和分离处理,每个客户都处于自己的隔离区。这些数据库相似,有一些功能添加到此处和那里,它们被版本化并分别部署,整个过程运作良好。每个客户有n个登录。我想开发一个单一的“基本站点”,然后用它来给租户提供功能,并将所有活动隔离到一个租户的单个数据库中。问题在于如何向一个租户站点添加新组件(例如论坛),而不会破坏其他租户的站点体验。
欢迎提出所有的想法。谢谢。