Asp.net mvc 我应该如何设计两个不同ASP.NET MVC应用程序所需的共享模块?

Asp.net mvc 我应该如何设计两个不同ASP.NET MVC应用程序所需的共享模块?,asp.net-mvc,asp.net-mvc-areas,Asp.net Mvc,Asp.net Mvc Areas,我正在设计一个模块,供两个不同的网站使用。所有内容都将用MVC(模块和两个web应用程序)编写 我想设计我的模块,以便代码可以从共享位置包含。我只想维护一个版本。我的第一个想法是MVC2的区域特性。但从我的阅读来看,MVC2似乎只“正式”支持内联区域 听起来,在不久的将来可能会放弃对这些地区的多项目支持 还有其他选择吗 我的设计的一个现实例子是创建一个MVC购物车(这将是共享模块),并在两个不同的MVC网站(比如书店和自行车配件店)上使用它。您仍然可以将其作为一个区域,在一个地方维护,并在需要时

我正在设计一个模块,供两个不同的网站使用。所有内容都将用MVC(模块和两个web应用程序)编写

我想设计我的模块,以便代码可以从共享位置包含。我只想维护一个版本。我的第一个想法是MVC2的区域特性。但从我的阅读来看,MVC2似乎只“正式”支持内联区域

听起来,在不久的将来可能会放弃对这些地区的多项目支持

还有其他选择吗


我的设计的一个现实例子是创建一个MVC购物车(这将是共享模块),并在两个不同的MVC网站(比如书店和自行车配件店)上使用它。

您仍然可以将其作为一个区域,在一个地方维护,并在需要时复制到其他项目。我知道,如果不在消费web项目中设置适当的路由,就无法实现开箱即用


除此之外,我也对解决方案感兴趣。

MVC Contrib的便携式区域正是您所需要的:


我的经历非常积极。有3个应用程序共享3个便携区域。一个很快就要投入生产了。

遗憾的是,这可能需要一种方法。理想情况下,我会在它自己的项目中开发它,在那里我可以包括一些测试工具。“将其复制到其他项目”的概念并不是我理想的可维护代码。除此之外,当某些内容发生更改时,我必须保持同步,并监视其他开发人员,以确保他们不会更改错误的副本。听起来我很头疼。谢谢你的建议。是什么让这个选项比多个项目领域对您更有吸引力?如果我错了,请纠正我的错误,但它似乎是MVC Contrib构建程序集(即二进制库)的可移植区域,您在应用程序中使用这些区域作为引用。为了便于调试和开发,我通常喜欢添加这样的模块作为源代码。