【发布时间】:2019-05-22 04:27:47
【问题描述】:
我尝试从下拉列表中获取一个值,但我有这个错误“{”值不能为空。\r\n参数名称:源“}我需要发布这个值,因为它是我的表“页面”的 id 这是控制器的代码:
public ActionResult Index()
{
List<SelectListItem> SelectListItem = new List<System.Web.Mvc.SelectListItem>();
foreach (Pages item in DbContext.Pages)
{
SelectListItem SelectList = new SelectListItem()
{
Text = item.PageName,
Value = item.IdPage.ToString()
};
SelectListItem.Add(SelectList);
}
Pages pagesmodel = new Pages();
pagesmodel.PagesA = SelectListItem;
return View(pagesmodel);
}
// this is the problem
var selected = page.PagesA.Select(item =>
item.Value.Equals(page.SelectedPages));
return RedirectToAction("Details","manage",new { id=selected});
}
这是我的模型的代码:
public class PagesModel
{
public IEnumerable<SelectListItem> PagesA { get; set; }
public IEnumerable<string> SelectedPages { get; set; }
}
谢谢;
【问题讨论】:
-
在
PagesModel中,IEnumerable<string> SelectedPages是IEnumerable。然而,您遇到问题的代码行有一个Equals运算符。这是预期的吗?您不能对 IEnumerable (SelectedPages) 和字符串 (SelectListItem.Value) 执行Equals操作 -
我需要得到一个下拉列表的值。当我调试解决方案时,我在选定页面中得到结果,但 page.selectedpage 它为空
标签: c# entity-framework razor asp.net-mvc-5