我一直在逐步完成Orchard CMS的源代码,以了解他们如何解决多租户问题。
有人可以指出我应该查看的文件或区域,以了解管道如何适用于Orchard的多租户吗?
作为一个测试项目,我希望能够在ASP.Net MVC应用程序中编写类似的裸骨代码来演示多租户。
我看过的地方:
答案 0 :(得分:7)
也许这会对你有所帮助。我实现了一个完整的MVC多租户应用程序。以下是我发现的一些链接和一些示例应用程序:
http://msdn.microsoft.com/en-us/library/aa479086.aspx
http://weblogs.asp.net/zowens/multi-tenant-asp-net-mvc-introduction
http://lonetechie.com/2012/09/25/multi-tenant-architecture-with-asp-net-mvc-4/
http://codeofrob.com/archive/2010/02/14/multi-tenancy-in-asp.net-mvc-controller-actions-part-i.aspx
http://msdn.microsoft.com/en-us/library/aa479086.aspx#mlttntda_cc
http://lukesampson.com/post/303245177/subdomains-for-a-single-application-with-asp-net-mvc
http://code.google.com/p/multimvc/
http://www.agileatwork.com/bolt-on-multi-tenancy-in-asp-net-mvc-with-unity-and-nhibernate/
http://ayende.com/blog/3530/multi-tenancy-approaches-and-applicability
http://weblogs.asp.net/zowens/archive/tags/Multi-tenancy/default.aspx
http://cloudsamurai.codeplex.com/
http://cloudninja.codeplex.com/
http://msdn.microsoft.com/en-us/library/hh534484.aspx
即使从头开始,你也会受到伤害。 MVC框架在帮助您解决问题方面做得很少。
答案 1 :(得分:2)
您需要从果园库中安装多租户模块,启用它,并在设置中进行配置。
您要查看的代码是多天线模块子文件夹中的代码。
但是,了解Orchard如何实现多租户对您的帮助不大。 Orchard有一个非常复杂的路由和扩展系统,有大量的层和动态调度点。你不能简单地将Orchard的内部系统放入一个简单的MVC应用程序中,而基本上不需要重新创建Orchard的所有基础设施。
Orchard不是一个如何编写独立MVC应用程序的好例子,因为它对灵活性有很多要求,而且它的系统基于动态claysharp的东西非常重要。
除非您有理由需要特别使用Orchard方法,否则您更适合查看此类解决方案http://weblogs.asp.net/zowens/archive/tags/Multi-tenancy/default.aspx
答案 2 :(得分:1)
有一些示例项目展示多租户部署: