多个MVC 3项目之间是否能够共享视图?

9
我正在构建一个包含多个不同asp.net mvc 3网络项目的解决方案。 我想能够在所有这些项目中利用一些视图,因为它们都将在2或3个不同的页面上显示相同的内容(并插入一些特定应用程序的自定义内容)。
这是否可行?
2个回答

4

我能想到的唯一办法是将你的cshtml编译为一个单独的程序集(假设你正在使用RAZOR)。请参考这里


0

一般来说,我还没有看到过多项目ASP.NET MVC解决方案的很多例子。因为这似乎没有意义。它会使事情变得复杂,并且忽略了area,可能会用于获得相同的体验,但它们是比多个MVC项目更好的选择。然后还有一个问题,即这3个项目是否具有如此多的共同点,以至于它们真的应该都在一个解决方案中。您实际上有哪些MVC应用程序?它们做什么?在线上大多数示例解决方案都是单个MVC项目和多个类库项目。

现在正式提问..最近我发现自己在做类似的事情,实际上我没有在一个解决方案中拥有多个项目,但我有不同的独立项目,所有这些项目都将受益于使用一个单一的视图,我们可以称之为“主”项目。我最终创建了一个Nuget包。我实际上还将其他东西注入了这个包(脚本、样式、图像等),但您也可以仅用于视图。然后,您只需将包添加到下一个项目中,它就会将包中的文件插入到目标项目中。我的意思是,您的包不一定包含代码。

我不会在这里详细解释,但您应该研究一下。


4
企业级解决方案通常需要将SOA服务分离到同一产品的不同子域中。在这些情况下,您可以拥有独立的项目,共享公共库并包含公共布局。 - Dr Rob Lang

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接