我目前正在开发MVC4网站来管理一些客户和车辆,如果数据库发生变化(例如添加字段),是否有办法生成视图,而不是硬编码字段和控件。
例如视图
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>customer</legend>
<div class="editor-label">
@Html.LabelFor(model => model.name)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.name)
@Html.ValidationMessageFor(model => model.name)
</div>
<input type="submit" value="Save" />
</p>
</fieldset>
现在可以说我想在数据库中添加另一个字段,比如地址我必须将更改添加到视图中。这可以用动态的方式完成。
答案 0 :(得分:1)
您可能希望使用T4模板从数据库表中的列生成模型:http://highoncoding.com/Articles/557_Code_Generation_Using_T4_Templates.aspx
答案 1 :(得分:0)
如果您准备更改模型类,则可以使用Html.DisplayForModel(对于只读视图)或Html.EditorForModel(对于可编辑视图),这将基于以下内容自动生成HTML模型的属性。
答案 2 :(得分:0)
MvcScaffolding NuGet包正是为此而准备的。你可以在这里读更多关于它的内容: http://blog.stevensanderson.com/2011/01/13/scaffold-your-aspnet-mvc-3-project-with-the-mvcscaffolding-package/