I have a NameValueCollection
, and want to iterate through the values. Currently, I’m doing this, but it seems like there should be a neater way to do it:
NameValueCollection nvc = new NameValueCollection(); nvc.Add("Test", "Val1"); nvc.Add("Test2", "Val1"); nvc.Add("Test2", "Val1"); nvc.Add("Test2", "Val2"); nvc.Add("Test3", "Val1"); nvc.Add("Test4", "Val4"); foreach (string s in nvc) foreach (string v in nvc.GetValues(s)) Console.WriteLine("{0} {1}", s, v); Console.ReadLine();
Is there?
Logo C merupakan sebuah lambang yang merujuk pada Copyright, yang berarti hak cipta.
C adalah huruf ketiga dalam alfabet Latin. Dalam bahasa Indonesia, huruf ini disebut ce (dibaca [tʃe]).
Meskipun C dibuat untuk memprogram sistem dan jaringan komputer namun bahasa ini juga sering digunakan dalam mengembangkan software aplikasi. C juga banyak dipakai oleh berbagai jenis platform sistem operasi dan arsitektur komputer, bahkan terdapat beberepa compiler yang sangat populer telah tersedia.
Bahasa pemrograman C ini dikembangkan antara tahun 1969 – 1972 oleh Dennis Ritchie. Yang kemudian dipakai untuk menulis ulang sistem operasi UNIX. Selain untuk mengembangkan UNIX, bahasa C juga dirilis sebagai bahasa pemrograman umum.
You can use the key for lookup instead of having two loops:
foreach (string key in nvc) { Console.WriteLine("{0} {1}", key, nvc[key]); }
You can flatten the collection with Linq, but it's still a foreach
loop but now more implicit.
var items = nvc.AllKeys.SelectMany(nvc.GetValues, (k, v) => new {key = k, value = v}); foreach (var item in items) Console.WriteLine("{0} {1}", item.key, item.value);
The first line, converts the nested collection to a (non-nested) collection of anonymous objects with the properties key and value.
It's flatten in the way that it's now a mapping key -> value instead of key -> collection of values. The example data:
Before:
Test -> [Val],
Test2 -> [Val1, Val1, Val2],
Test3 -> [Val1],
Test4 -> [Val4]
After:
Test -> Val,
Test2 -> Val1,
Test2 -> Val1,
Test2 -> Val2,
Test3 -> Val1,
Test4 -> Val4
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With