【发布时间】:2019-02-14 12:26:50
【问题描述】:
我有 2 个列表。第一个是类型string。第二个是类型object。现在我想将两个列表都放入Tuple<string,object>。
像这样
var List = new(string list1, object list2)[]
我该怎么做?
我必须创建 2 个单独的列表,因为我正在序列化对象,如果我首先有 List<Tuple<string,object>>,则序列化将不起作用。
两个列表都可以变大,所以也许使用 foreach 循环?
【问题讨论】:
-
(string list1, object list2)是一个 ValueTuple 结构,而不是一个 Tuple 类。如果您想要值元组(由于元组组件被正确命名,我建议您这样做)只需将答案中的new Tuple<string, object>(x, y)或Tuple.Create(a, b)分别替换为(x, y)或(a, b)。 -
你能给我举个例子吗?
-
如果您接受 Markus 的回答,只需将最后一行替换为
List<(string yourFieldNameHere1, object yourFieldNameHere)> result = lst.Zip(obj, (x, y) => (x, y)).ToList();