C# 如何修复MVC dropdownlistfor的对象错误

C# 如何修复MVC dropdownlistfor的对象错误,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我得到一个错误对象引用,没有设置为对象的实例。请提供一些指导。我不确定我在这里哪里出了问题 我的班级 public class UploadExpressClients { [Display(Name = "Clients")] public string UEclient { get; set; } public string clientdesc { get; set; } public List<UploadE

我得到一个错误对象引用,没有设置为对象的实例。请提供一些指导。我不确定我在这里哪里出了问题

我的班级

 public class UploadExpressClients
    {
        [Display(Name = "Clients")]
        public string UEclient { get; set; }
        public string clientdesc { get; set; }
        public List<UploadExpressClients> GetUploadExpressClients { get; set; }
    }
我的看法呢

@using (Html.BeginForm())
 {
    @Html.DropDownListFor(x => x.clientdesc,
    Model.GetUploadExpressClients.Select(x => new SelectListItem { Text= x.UEclient, Value = x.clientdesc.ToString()}),
    new { @class = "form-Control chosen-select" })

    <input type="submit" name="name" value="Submit" />

 }
@使用(Html.BeginForm())
{
@Html.DropDownListFor(x=>x.clientdesc,
Model.GetUploadExpressClients.Select(x=>newselectListItem{Text=x.UEclient,Value=x.clientdesc.ToString(),
新建{@class=“表单控件已选定选择”})
}
请再试一次--

型号:

   public class UploadExpressClients
{
    [Display(Name = "Clients")]
    public string UEclient { get; set; }
    public string clientdesc { get; set; }
    public List<SelectListItem> DropDownOptionList { get; set; }
}
    [HttpGet]
    public ActionResult UploadExpressAccess()
    {

        UploadExpressClients objClients = new UploadExpressClients();

        @using(var db = new ackmanagerEntities()){
         objClients.DropDownOptionList = db.profiles
         .Select(x => new SelectListItem { Value = x.FileDesc.ToString(), Text = x.Client })
         .ToList();
        }

        return View(objClients);
    }

    [HttpPost]
    public ActionResult UploadExpressAccess(UploadExpressClients objClients)
    {
        return RedirectToAction("UploadExpressAccess");
    }
 @using UploadExpressClients

 @using (Html.BeginForm())
 {
    @Html.DropDownListFor(x => x.clientdesc,Model.DropDownOptionList,"--Select--",new { 
 @class = "form-Control chosen-select" })

    <input type="submit" name="name" value="Submit" />

 }
查看:

   public class UploadExpressClients
{
    [Display(Name = "Clients")]
    public string UEclient { get; set; }
    public string clientdesc { get; set; }
    public List<SelectListItem> DropDownOptionList { get; set; }
}
    [HttpGet]
    public ActionResult UploadExpressAccess()
    {

        UploadExpressClients objClients = new UploadExpressClients();

        @using(var db = new ackmanagerEntities()){
         objClients.DropDownOptionList = db.profiles
         .Select(x => new SelectListItem { Value = x.FileDesc.ToString(), Text = x.Client })
         .ToList();
        }

        return View(objClients);
    }

    [HttpPost]
    public ActionResult UploadExpressAccess(UploadExpressClients objClients)
    {
        return RedirectToAction("UploadExpressAccess");
    }
 @using UploadExpressClients

 @using (Html.BeginForm())
 {
    @Html.DropDownListFor(x => x.clientdesc,Model.DropDownOptionList,"--Select--",new { 
 @class = "form-Control chosen-select" })

    <input type="submit" name="name" value="Submit" />

 }
@使用UploadExpressClient
@使用(Html.BeginForm())
{
@DropDownListFor(x=>x.clientdesc,Model.dropdownloptionList,“--Select--”,new{
@class=“选择的表单控件”})
}

This:
返回视图(新的UploadExpressClient())应该是:
返回视图(objClients)@SteveGreene谢谢。我做了更改,但仍然出现错误。您需要调试。你的ObjClient在它进入视图之前就被填充了吗?@SteveGreene我认为挖掘之后不会发生这种情况。当我在objClients上放置断点时,它从未命中它,我得到了错误。您应该发布失败的行。这会节省很多时间。这不起作用。到处都是错误。但是谢谢你