This link提供示例代碼來推斷VB.NET中XML文件的模式。一個特別的線在我翻譯到C#,即失敗,將vb.net翻譯爲C#:一行代碼
Dim schema As XmlSchema = schemaSet.Schemas()(0)
我的翻譯是
XmlSchema schema = schemaSet.Schemas()[0];
我看不出有什麼不對我的翻譯?
This link提供示例代碼來推斷VB.NET中XML文件的模式。一個特別的線在我翻譯到C#,即失敗,將vb.net翻譯爲C#:一行代碼
Dim schema As XmlSchema = schemaSet.Schemas()(0)
我的翻譯是
XmlSchema schema = schemaSet.Schemas()[0];
我看不出有什麼不對我的翻譯?
XmlSchemaSet.Schemas()返回您無法通過索引訪問的ICollection
。如果您使用的使用。NET 3.5,你可以使用LINQ做:
schemaSet.Schemas().Cast<XmlSchema>().First();
否則,您必須使用foreach
循環,在第一次迭代後停止。
+1是因爲第一個指出嘗試使用'[0]'不適用於'ICollection'。 –
+1提供了一個實際上可以解決問題的答案。 –
ChrisWue:太棒了!有用。非常感謝你。我很好奇 - 什麼是非Linq解決方案? – AAsk
你得到的編譯器錯誤是什麼?什麼類型是'schemaSet'? – Jacob
'schemaSet'的類型是什麼? – jzila
類型爲System.Xml.Schema.XmlSchemaSet,錯誤爲'無法將索引用[]應用於System.Collections.ICollection類型的表達式' – AAsk