C# 在mvc中使用逗号分隔的值选择列表框项目?

C# 在mvc中使用逗号分隔的值选择列表框项目?,c#,asp.net-mvc-5,listbox,C#,Asp.net Mvc 5,Listbox,我正在以逗号分隔的字符串保存选定的列表框项值 private string fabricString(IEnumerable<string> fabricsList) { string str = string.Join(",", fabricsList); return str; } 使用上面的代码,我得到了错误 System.Web.Mvc.dll中发生“System.ArgumentNullException”类型的异常,但未在

我正在以逗号分隔的字符串保存选定的列表框项值

private string fabricString(IEnumerable<string> fabricsList)
    {
        string str = string.Join(",", fabricsList);
        return str;
    }
使用上面的代码,我得到了错误

System.Web.Mvc.dll中发生“System.ArgumentNullException”类型的异常,但未在用户代码中处理 排队

fad_Data.sizeList=fad_Data.size.Split','.ToList.Selects=>newselectListItem{Text=s,Value=s}


方法。

您可能正在尝试将IEnumerable分配给导致ArgumentNullException的列表类型

下面的代码是一个更安全的版本

 public ActionResult Edit(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            fad_Data fad_Data = db.fad_Data.Find(id);
            fad_Data?.sizeList = fad_Data?.size?.Split(',').ToList().Select(s => new SelectListItem() { Text = s, Value = s }).ToList(); // You need to add ToList() at the end.
            if (fad_Data.sizeList == null)
            {
                return HttpNotFound();
            }
            return View(fad_Data);
        }
var bar=foo?.buz;这种条件接收可以转换为

if(foo != null)
{
   bar = foo.buz();
}

请包括声明db变量的代码以及fad的属性/方法_Data@MayankBhuvnesh所以,当您单击“编辑”时,您会问您是否希望使用选定的值显示?是的,我正在尝试根据该字符串值选择返回列表框项目。就像上面的例子str=1,3一样,我希望列表框中位置1和3处的值被选中。另外,fad_Data.size不为空。@MayankBhuvnesh您确定fad_数据不为空吗?他妈的确定。只有fad_Data.sizeList为空。@MayankBhuvnesh该sizeList的类型是什么?这是一个列表吗
if(foo != null)
{
   bar = foo.buz();
}