局部视图中的MVC 5动态模型

时间:2019-02-26 20:41:27

标签: model-view-controller asp.net-mvc-5 asp.net-mvc-partialview

我有一些(大约6个)查找表,例如度类型,类别类型等。所有这些表都具有相似的列ID,名称和isactive字段。我为每个表创建了CRUD存储过程。

在我的MVC5项目中,我创建了一个模型,存储库和DAL,以将数据分别传递给sp。

我还分别为它们创建了视图模型,控制器视图和原始视图。

我意识到,crud(创建/编辑/详细信息/列表/删除)视图页面使用相同的html,只是在页面顶部调用模型。

问题:有什么办法可以创建html的部分视图并在页面中使用动态模型?

例如:

@model Microsoft.myorg.viewmodels.degreetypesVM
<!-- need to use a dynamic model (degreetypesVM, categorytypeVM etc) above and create a partial view for the below html -->

@{
    ViewBag.Title = "Degree Type";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

@using (Html.BeginForm())
{
 <table class="container">
        <tbody>
            <tr class="row">
                <td class="col2" scope="row">
                    <div class="title-text">
                        @Html.LabelFor(model => model.Name)
                        <span title="This field is required." class="warning">*</span>
                    </div>
                </td>
                <td class="gray">
                    @Html.EditorFor(model => model.Name, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.Name, "", new { @class = "text-danger" })
                </td>
            </tr>
            ..
            ..
           </tbody>
           ..
           ..

1 个答案:

答案 0 :(得分:0)

您可以简单地编写局部视图并在其中传递模型,也可以包装所有常见的文件 并为自己的局部视图编写自己的模型