asp.net mvc

时间:2019-07-17 13:10:06

标签: asp.net entity-framework model-view-controller layout asp.net-mvc-5

在我的应用程序中,我在_layout文件中有一个带有dropdownlist的表单。

在视图中提交表单后(我有很多视图具有相同的_Layout文件)转到一些其他控制器视图。

但是我总是遇到错误

对象引用未设置为下拉列表中对象的实例。

我的_HomeLayout.cshtml

@using (Ajax.BeginForm("Allpost", "User", new AjaxOptions() { HttpMethod = "GET", UpdateTargetId = "frmEmp" }))
       {
          @Html.Partial("_AllCategories", Model)
        }

局部视图

@model Models.HomePageSearchVM

@Html.DropDownListFor(m => m.catlist, Model.CategoriesList, "Select Categorie")

HomeController

public ActionResult _AllCategories()
        {
            HomePageSearchVM pasvm = new HomePageSearchVM();

            pasvm.CategoriesList = new MultiSelectList(db.CategoriesList, "CatId", "CategorieName");
                return PartialView("_AllCategories", pasvm);
        }

HomePageSearchVM.cs

namespace Entities
{
    public partial class HomePageSearchVM
    {
        public virtual IEnumerable<SelectListItem> CategoriesList { get; set; }

        [NotMapped]
        public string[] catlist { get; set; }

        public string search { get; set; }
    }
}

查看首页

@model Models.PostallVM
@{
    Layout = "~/Views/Shared/_HomeLayout.cshtml";
}
----- some code ----

错误

  

对象引用未设置为对象的实例。

如何在_Layout文件中的 Form 中使用一些文本和下拉字段,并在Layout中调用模型。我对具有不同模型的许多视图使用相同的布局文件。

希望您能理解我的问题。

0 个答案:

没有答案