向元组添加值

本文关键字:添加 元组 | 更新日期: 2023-09-27 18:33:45

我最初使用 IDictonary 在我的 MVC 模型中存储字符串值 - 如下所示:

public IDictionary<string, string> MyValues { get; set; }
MyValues = new Dictionary<string, string>
{
    {"Name", "Joe Bloggs"}, 
    {"Address", "Main Street"}
};

以上是在我的模型构造函数中设置的,当我通过执行以下操作获取模型时,我还设置了其他值:

var model = new MyModel();
model.MyValues .Add("foo", "bar");

在我看来,我有以下几点:

@{
    var myValues = Model.MyValues.ToList();
    for (int i = 0; i < myValues .Count(); ++i)
    {
        @Html.Hidden("Id", myValues[i].Key)
        @Html.Hidden("Value", myValues[i].Value)
    }
}

我现在需要更改此功能,而不是使用元组实现此功能

到目前为止,我刚刚将模型中的 MyValues 更改为:

    public IEnumerable<Tuple<string, string>> MyValues { get; set; }

我不确定如何实现我在模型构造函数中具有的相同功能,在模型中设置其他值,然后在视图中枚举它。

向元组添加值

它就像:

MyValues = new List<Tuple<string,string>>
{
    Tuple.Create("Name", "Joe Bloggs"), 
    Tuple.Create("Address", "Main Street")
};

和:

model.MyValues.Add(Tuple.Create("foo", "bar"));

和:

@{
    var myValues = Model.MyValues;
    foreach (var tuple in myValues)
    {
        @Html.Hidden("Id", tuple.Item1);
        @Html.Hidden("Value", tuple.Item2);
    }
}

但是你应该把MyValuesIEnumerable改为IListICollection更好,说添加是可能的。