2012-10-19 33 views
1

考虑Child & Root类 -生成脚手架模板递归MVC

public class Child 
{ 
    public string ChildProperty { get; set; } 
} 
public class Root 
{ 
    public Child child { get; set; } 
    public string RootProperty { get; set; } 
} 

之间 以下compostion关系的Root类创建强类型的视图,不包括child财产。

<fieldset> 
    <legend>Root</legend> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.RootProperty) 
    </div> 
    <div class="editor-field"> 
     @Html.EditorFor(model => model.RootProperty) 
     @Html.ValidationMessageFor(model => model.RootProperty) 
    </div> 

    <p> 
     <input type="submit" value="Save" /> 
    </p> 
</fieldset> 

如何生成脚手架模板以包含子属性?

谢谢你的帮助。

回答

1

通常你需要创建一个做到这一点你自己的T4模板:

https://stackoverflow.com/a/16072432/176877

但是,我不能确定你实际上可以通过这些子模型循环;我相当肯定,您需要更进一步,并使用您自己的PowerShell脚本实际生成一个自定义脚手架,该脚本循环访问这些模型并调用您创建的一组新模板。

http://blog.stevensanderson.com/2011/04/07/mvcscaffolding-creating-custom-scaffolders/

换句话说,你,如果你想这样做有很多工作要做你。