我有這樣的對象:初始化的IEnumerable <string>在C#
IEnumerable<string> m_oEnum = null;
,我想將其初始化。與
IEnumerable<string> m_oEnum = new IEnumerable<string>() { "1", "2", "3"};
嘗試,但它說「IEnumerable的犯規包含附加字符串的方法。任何想法?謝謝
我有這樣的對象:初始化的IEnumerable <string>在C#
IEnumerable<string> m_oEnum = null;
,我想將其初始化。與
IEnumerable<string> m_oEnum = new IEnumerable<string>() { "1", "2", "3"};
嘗試,但它說「IEnumerable的犯規包含附加字符串的方法。任何想法?謝謝
好,增加了答案說明你可能是也尋找
IEnumerable<string> m_oEnum = Enumerable.Empty<string>();
或
IEnumerable<string> m_oEnum = new string[]{};
IEnumerable<T>
是一個接口,你需要開始與一個具體類型(實現IEnumerable<T>
)。例:
IEnumerable<string> m_oEnum = new List<string>() { "1", "2", "3"};
無法實例的界面 - 你必須提供一個具體實現的IEnumerable的
爲。實現IEnumerable
IEnumerable<string> m_oEnum = new string[] {"1","2","3"}
DownVoter,爲什麼呢? –
IEnumerable
只是一個接口,所以不能直接實例化。
你需要創建一個具體類(如List
)
IEnumerable<string> m_oEnum = new List<string>() { "1", "2", "3" };
然後你可以通過這個來什麼期待的IEnumerable
。
public static IEnumerable<string> GetData()
{
yield return "1";
yield return "2";
yield return "3";
}
IEnumerable<string> m_oEnum = GetData();
雖然有點矯枉過正,使用收益+1的 –
@AdrianCarneiro +1爲押韻 – 5argon
'Enumerable.Empty()'是爸爸。正是我需要的。 –