我有一个非常棘手的问题, 基本上我有一个可以有3个字符串选项的类,这里是基本类
public class Person
{
public int Id {get;set;}
public IEnumerable<string> Options {get;set;}
}
现在基本上调用它时,我想用3个字符串对象填充Options,所以在我的剃刀视图中,我可以使用foreach并绘制出3个字符串输入框。
但由于不需要选项,当用户返回此页面时,我将使用LINQ查询来提取他们选择的选项。
所以我们说他们提出了两个选项,所以在我的LINQ查询运行之后它会返回一个大小为2的IEnumerable,如果我只是保留它,那么当我想要显示3时,视图将只显示2个输入框,但是使用IEnumerable我无法插入或添加。
实现这一目标的最佳方式是什么?
答案 0 :(得分:0)
你必须Clone
列表,然后你必须执行相当的操作。
答案 1 :(得分:0)
也许实例化你可以枚举到列表的选项,然后用你的选项填充,这可以在构造函数中完成
public void Person()
{
var optionsList = new List<string>();\
//Add your options
Options = optionsList;
}
答案 2 :(得分:0)
您可以为用户选择的选项创建新的List<string>
:
public void Repopulate()
{
var allOptions = Options;
// Linq Query..
Options = allOptions;
}
然后让视图始终显示Options
。