Can I use collection initializers with a NameValueCollection?

Solution 1:

Yes; just uses braces instead of parentheses.

var nvc = new NameValueCollection { {"a", "1"}, {"b", "2"} };

You can call Add methods with arbitrary sets of parameters using the syntax.

Solution 2:

You can use collection initializers with everything that has Add method. Yeah, duck typing. If Add has more then 1 param put tuples in curly bracets:

NameValueCollection nvc = new NameValueCollection() { { "a", "1" }, { "b", "2" } };