Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 列表框控件MVC上显示的空记录_Asp.net Mvc_Asp.net Mvc 3_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 列表框控件MVC上显示的空记录

Asp.net mvc 列表框控件MVC上显示的空记录,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我的视图上有两个列表框控件。左侧的列表框包含数据,而右侧的列表框不包含任何数据。因此,我创建了一个空列表,并将其绑定到右侧的listbox,以避免出现null异常。下面是我的控制器的代码 SubscriptionViewModel subscriptionViewModel = new SubscriptionViewModel(); IEnumerable<SelectListItem> selectedExchanges = new SelectList(new[] { "

我的视图上有两个列表框控件。左侧的列表框包含数据,而右侧的列表框不包含任何数据。因此,我创建了一个空列表,并将其绑定到右侧的listbox,以避免出现null异常。下面是我的控制器的代码

 SubscriptionViewModel subscriptionViewModel = new SubscriptionViewModel();
  IEnumerable<SelectListItem> selectedExchanges = new SelectList(new[] { "" });
   return View(subscriptionViewModel); 

<>这里发生的是,在空白字符串之后添加该项。如果您看到上面的代码,我将用一个空字符串初始化右侧的列表框。因此,在我的列表框的顶行中可以看到一个空白。我怎样才能去掉这个?

删除空字符串。客户端或服务器端应该可以。我得到一个空异常作为模型。如果我不分配空字符串,SelectedExchange包含空值。删除新的[]{}?啊,我看到您正在从列表中创建多选择列表并传入值。可能就是你所需要的。实际上,它是这样工作的:IEnumerable selectedExchanges=new SelectList,Value,Text;
 @Html.ListBoxFor(m => m.SelectedExchangesIds, new MultiSelectList((IEnumerable<SelectListItem>)Model.SelectedExchanges, "Value", "Text"), new { id = "destinationExchanges", name = "destinationExchanges", @style = "width: 250px;height: 144px;", @CssClass = "MyListBox" })
$('#ShiftExchangesRight').click(function (e) {
    $('#sourceExchanges option:selected').appendTo('#destinationExchanges');
    e.preventDefault();
});