2011-02-24 61 views

回答

114

是;只是使用大括號而不是括號。

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

您可以使用語法調用Add方法,使用任意參數集。

+0

感謝您的快速回復! – gap 2011-02-24 16:25:55

+0

關於*對象和集合初始化的MSDN頁面*概述了爲什麼'NameValueCollection'接受這種語法:http://msdn.microsoft.com/en-us/library/bb384062.aspx – user7116 2011-02-24 16:26:28

+3

@six:實際上,它沒有甚至提到這個語法。 – SLaks 2011-02-24 16:28:01

7

您可以對包含Add方法的所有東西使用集合初始值設定項。是啊,打字。如果Add具有多於1個參數,則將元組放在大括號中:

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

不完全;它必須實現'IEnumerable'。 – SLaks 2011-02-24 16:25:46

+2

實現'System.Collections.IEnumerable'並有一個至少帶有1個參數的'Add'方法。 – user7116 2011-02-24 16:27:19

+0

@SLaks是的,我忘了它。順便說一句,這是相當奇怪的要求,因爲這種構造不使用IEnumerable的方法。 – Andrey 2011-02-25 09:21:00

相關問題