C# 在C中设置SelectList中的所有值#

C# 在C中设置SelectList中的所有值#,c#,selectlist,C#,Selectlist,在SelectList对象中,我希望SelectList的每个元素的Text属性也应该是值。例如: SelectList s=new SelectList(some list); s.ElementAt(i).Value=s.ElementAt(i).Text; 除了使用循环,还有其他方法可以做到这一点吗?是否有任何内置方法或类似方法来完成此任务?您可以对SelectList使用以下构造函数重载: public SelectList( IEnumerable items, st

SelectList
对象中,我希望SelectList的每个元素的Text属性也应该是值。例如:

SelectList s=new SelectList(some list);
s.ElementAt(i).Value=s.ElementAt(i).Text;

除了使用循环,还有其他方法可以做到这一点吗?是否有任何内置方法或类似方法来完成此任务?

您可以对SelectList使用以下构造函数重载:

public SelectList(
    IEnumerable items,
    string dataValueField,
    string dataTextField
)

然后,您可以为dataValueField和dataTextField提供相同的列表成员。

如果您真的想不使用循环,只需使用linq foreach(这是后台的循环):


你的意思是:新的选择列表(一些列表,“文本”、“文本”);你能告诉我你的名单怎么样吗?它像列表还是什么?@karank:是的,完全是新的SelectList(一些列表,“文本”,“文本”);应该行。他说,他不想循环浏览列表。@ebad86这就是我建议linq的原因
s.ToList().ForEach(c=>c.Text = c.Value)