Asp.net mvc 在selectlistitem-MVC中显示多列
模型 Razor视图以显示列表框Asp.net mvc 在selectlistitem-MVC中显示多列,asp.net-mvc,selectlistitem,Asp.net Mvc,Selectlistitem,模型 Razor视图以显示列表框 private void CartChoices(cartVM model) { model.CartChoices = db.Products.Select(m => new SelectListItem { Value = ((int)m.ProductId).ToString(), Text = m.productName }); } @Html.ListBoxFor(m=>m.select
private void CartChoices(cartVM model)
{
model.CartChoices = db.Products.Select(m => new SelectListItem
{
Value = ((int)m.ProductId).ToString(),
Text = m.productName
});
}
@Html.ListBoxFor(m=>m.selectedProductId,Model.CartChoices)
您希望显示模型的哪些属性?(它只需要是Value=m.ProductId.ToString(),
)Prductname、description等。但selectlist项只有一个值和文本项目,因此无法添加其他项…它表示属性的重复初始化text=m.productName+“”+m.someOtherProperty
等。但不清楚您为什么要这样做。这样我可以在列表框中显示数据(我将使用jquery listbox t显示图像等),我认为您的评论将解决我的问题。我将在几个小时后检查并让您知道,如果您使用jquery插件,我怀疑它是否能解决任何问题。还有什么jquery插件?
public class cartVM
{
public int id { get; set; }
public int productId { get; set; }
public int userId { get; set; }
public int messageId { get; set; }
public DateTime AddDate { get; set; }
public virtual List<Product> Product{ get; set; }
public List<int> SelectedProductIds { get; set; }
public IEnumerable<SelectListItem> CartChoices { get; set; }
}
private void CartChoices(cartVM model)
{
model.CartChoices = db.Products.Select(m => new SelectListItem
{
Value = ((int)m.ProductId).ToString(),
Text = m.productName
});
}
<div>
@Html.ListBoxFor(m => m.SelectedProductIds , Model.CartChoices)
</div>