如何使用带有List <mystructure>的LINQ投影来获取NameValueCollection?</mystructure>

时间:2013-06-21 10:31:03

标签: c# linq namevaluecollection

我有一个

var list = new List<MyStructure>();

我想提取MyStructure.FooMyStructure.Bar并将这两个放在NameValueCollection中。我想要NameValueCollection,因为我正在使用WebClient.UploadValues()

以下内容会创建IEnumerable<NamedValueCollection>。我只需NameValueCollection

var nameValueCollection = structure.Select(x => new NameValueCollection             
        { 
            { x.TypeId.ToString(), x.Value } 
        });

感谢。

2 个答案:

答案 0 :(得分:4)

这里不需要使用LINQ

foreach(var myStruct in list)
{
   myNameValueCollection.Add(myStruct.Foo, myStruct.Bar);
}

答案 1 :(得分:2)

请尝试以下操作。

        class MyStructure
    {
        public string Foo { get; set; }
        public string Bar { get; set; }
    }

    public static void Main(string[] args)
    {

        var list = new List<MyStructure>();
        NameValueCollection nameValueCollection = new NameValueCollection();

        list.ForEach(x => {
            nameValueCollection.Add(x.Foo, x.Bar);
        });

    }