我有几个MVC4项目,我想制作一组在这些项目中重复使用的显示/编辑器模板。我想创建一个包含这些模板的通用项目,并在其他项目中引用它。MVC4共享模板
所以我在我的共同的项目中定义的视图,与其他一些公用事业一起:
Common
- Models
- CommonMetadataAttribute.cs
- Views
- Shared
- EditorTemplates
- Decimal.cshtml
- Object.cshtml
- Password.cshtml
- String.cshtml
- Switch.cshtml
- ViewTemplates
- Object.cshtml
- Switch.cshtml
- Error.cstml
而且在我的客户项目的模型我不得不
using MobileWeb.Common
public class MyViewModel
{
[UIHint("Switch")]
[CommonMetadata(Theme = "foo")]
public bool Enable { get; set; }
}
并在客户端项目意见我可以通过简单地调用来生成我的自定义编辑器:
@model MyViewModel
...
@Html.EditorFor(model => model.Enable)
Ide同盟,客户端项目可以用自己的模板覆盖,如果没有定义项目特定的模板,它将回退到通用模板。
我已经考虑过MvcContrib的便携式区域,但我不确定它是否会起作用,因为这不是一个真正的区域,我也不知道如何去设置它。在我走下这条路之前,我想知道这样做的首选方式是什么?
干净的主意!我会研究这个。 –
好东西,谢谢@Darin –
NuGet包真棒,易于创建,部署,安装,卸载。另一个选择是将项目导出为VS模板'(文件 - >导出模板)'并在新的解决方案中重新使用它。 –