微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 如何使用for each或foreach迭代IEnumerable集合?

我想逐个添加值但在for循环中如何迭代
通过逐个值并将其添加到字典中.

IEnumerable<Customer> items = new Customer[] 
{ 
     new Customer { Name = "test1",Id = 111},new Customer { Name = "test2",Id = 222} 
};

我想在i = 0时添加{Name =“test1”,Id = 111}
并且当i = 1 n时,想要添加{Name =“test2”,Id = 222}.

现在我正在每个键中添加完整的集合.(希望使用foreach或forloop实现此目的)

public async void Set(IEnumerable collection)
{
   RedisDictionary<object,IEnumerable <T>> dictionary = new RedisDictionary>(Settings,typeof(T).Name);
// Add collection to dictionary;
   for (int i = 0; i < collection.Count(); i++)
   { 
     await dictionary.Set(new[] { new keyvaluePair<object,IEnumerable <T>  ( i,collection) });
   }
}

解决方法

新版本

var dictionary = items.Zip(Enumerable.Range(1,int.MaxValue - 1),(o,i) => new { Index = i,Customer = (object)o });

顺便说一句,字典是一些变量的坏名字.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐