【问题标题】:ASP MVC standard viewsASP MVC 标准视图
【发布时间】:2012-04-25 22:10:12
【问题描述】:

ASP MVC 脚手架创建 Index、Create、Update、Delete 视图,但这在现实中是多么实用。创建、更新和删除视图似乎有很多重复的 UI 代码。让一个视图用于列表,另一个视图用于添加/编辑,并使用一些开关来适当地格式化视图以进行添加或编辑,并允许删除列表和编辑视图而不重定向到另一个视图,而不是简单地弹出,这不是更实用吗?出现某种“请确认删除...”消息?

如果有人做过类似的事情并愿意分享一些通用案例的代码 sn-ps 或 T4 脚手架模板,将不胜感激。

【问题讨论】:

    标签: asp.net-mvc t4 asp.net-mvc-templates


    【解决方案1】:

    实际上,NuGet 包 MvcScaffolding 正是这样做的,它使用 CreateOrEdit 局部视图。 (See here.) 然后通过引用局部视图(分别针对不同的控制器操作)创建添加/编辑视图:

    <fieldset>
        @Html.Partial("_CreateOrEdit", Model)
        <input type="submit" value="Create" />
    </fieldset>
    

    另一种选择是使用默认的 MVC 脚手架(在模型中使用数据注释属性定义)。

    <fieldset>
        @Html.EditorForModel()
        <input type="submit" value="Create" />
    </fieldset>
    

    就删除而言,您始终可以在任何视图的底部(或列表中)添加第二个迷你表单:

    @{ using (Html.BeginForm("Delete", "MyController", FormMethod.Post))
        {
            @Html.HiddenFor(model => model.id)
            <input type='submit' value='Delete' />
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-30
      • 2013-07-14
      • 2010-09-27
      相关资源
      最近更新 更多