我正在尝试在dropdownlist文本中显示多个值。下面给出示例。

SelectList(Parts, "pno", "pcode"+"pname")

在哪里
pno是部件号。
pcode是零件代码。
pname是零件名称

现在,请告诉我如何使用 View 模型将零件代码和名称连接起来(我想使用域模型来实现)。

最佳答案

根据Microsoft文档,SelectList(IEnumerable,String,String)通过使用列表,数据值字段和数据文本字段的指定项来初始化SelectList类的新实例。

http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist%28v=vs.108%29.aspx

为此,您需要将名称连接到模型的新属性中。我最喜欢的方法是,下面的堆栈溢出答案有8个ups。

How can I combine two fields in a SelectList text description?

在您的情况下,看起来像这样...

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 ")

编辑:添加在代码中以进行澄清。

关于c# - SelectList文本中的多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14528746/

10-15 11:40