在解决方案中的项目之间共享PartialView?

时间:2014-11-30 09:38:55

标签: c# asp.net-mvc partial-views

我正在开发2个MVC5网站。它们单独运行,但实际上彼此相关(1个管理站点和1个用户站点)。在这两个站点中,我必须使用HTML表格渲染图形板。我正在使用PartialView和Model来渲染它。

目前,这是我的解决方案结构:

  • Project.Common(类库项目,包含模型)

  • Project.Admin(管理站点的MVC5项目),参考Project.Common。

  • Project.User(用户站点的MVC5项目),参考Project.Common。

要渲染图形板,我将使用Project.Common中的BoardData类,这没关系。但是对于当前的解决方案结构,我必须在每个MVC5项目中创建2个PartialView,这可能很难在以后维护。

请为重新使用PartialView建议一个很好的解决方案。我已经知道我可以编写Helper了,但是这样,我必须在C#代码中编写HTML代码,这不是很好。在Razor View中有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以使用的其中一个选项是添加指向文件的链接。在这种情况下,将部分视图保留在单个项目中,在第二个项目中使用Add -> Existing Item,从第一个项目中选择部分视图,然后单击Add按钮旁边的小向下箭头,然后选择{{ 1}}。可以在MSDN上找到更多信息,请参阅添加现有项目作为链接。

在这种情况下,您将只在一个项目中拥有部分视图,并且对它的任何更改也将自动应用于其他项目。

答案 1 :(得分:0)

您应该将您的观点嵌入到Project.Common dll中,详细说明可以在https://visualstudiogallery.msdn.microsoft.com/f28290ce-d987-4f91-b034-707031e10ce6上找到