我试图在dropdownlist
文本中显示多个值。下面给出示例。
SelectList(Parts, "pno", "pcode"+"pname")
在哪里
pno
是部件号。
pcode
是部分代码。
pname
是零件名称
现在请告诉我如何在不使用 viewmodel 的情况下连接部分代码和名称(我想使用域模型来完成)。
我试图在dropdownlist
文本中显示多个值。下面给出示例。
SelectList(Parts, "pno", "pcode"+"pname")
在哪里
pno
是部件号。
pcode
是部分代码。
pname
是零件名称
现在请告诉我如何在不使用 viewmodel 的情况下连接部分代码和名称(我想使用域模型来完成)。
根据 microsoft 文档, SelectList(IEnumerable, String, String) 使用列表、数据值字段和数据文本字段的指定项来初始化 SelectList 类的新实例。
http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist%28v=vs.108%29.aspx
为此,您需要将名称连接到模型上的新属性中。下面带有 8 个 ups 的堆栈溢出答案是我最喜欢的方法。
在你的情况下,它看起来像这样......
public class Model
{
public string pcode { get; set; }
public string pname { get; set; }
public string ConcatDescription { get; set; }
public string ConcatDescription
{
get
{
return string.Format("{0} {1}", pcode , pname );
}
}
}
然后你可以直接调用该属性。
SelectList(Parts, "pno", "ConcatDescription ")
编辑:在代码中添加以进行澄清。
我不确定这是否会有所帮助。从 ac# 的角度来看,您可以像这样构造您的类
public class Parts
{
public string PartCode { get; set; }
public string PartName { get; set; }
public string PartNo
{
get
{
return PartCode + PartName;
}
set;
}
}
然后使用选择列表之类的。
SelectList(Parts, "PartNo")