类型名称文本在类型 xmlnodetype 中不存在
the type name text does not exist in the type xmlnodetype
我正在尝试从 C# 中的 xml 文件中读取特定部分。我尝试在此处使用此代码,但在 XmlNodeType.Text
中的 Text
下出现编译器错误,但奇怪的是它随 intellisense 一起出现,并在 Element
等其他所有内容中给出相同的错误, Comment
等..我错过了什么?
XmlTextReader reader = new XmlTextReader(xmlDoc);
List<string> paths = new List<string>();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element && reader.Name == "Paths")
foreach(XmlNodeType.Text aa in reader.ReadInnerXml())
paths.Add(aa);
}
reader.Close();
XML 文件
<Config>
<Paths>
<Input>C:\</Input>
<Output>C:\</Output>
<Log>\Logs</Log>
</Paths>
<SystemOwnerRoles>
<Supplier>SUPPLIER</Supplier>
<Mop>MOP</Mop>
</SystemOwnerRoles>
</Config>
XmlNodeType
是一个枚举。 XmlNodeType.Text
是一个值,而不是类型,但您正试图将其用作 aa
变量的类型。此外 ReaderInnerXml()
returns a string
,因此不清楚您希望如何对其进行迭代。
你有为此使用XmlTextReader
吗?使用 LINQ to XML,几乎所有 XML 工作都变得更简单。例如,这就是我认为您需要的全部内容:
var paths = XDocument.Load(xmlDoc)
.Descendants("Paths")
.Elements()
.Select(element => (string) element)
.ToList();
我正在尝试从 C# 中的 xml 文件中读取特定部分。我尝试在此处使用此代码,但在 XmlNodeType.Text
中的 Text
下出现编译器错误,但奇怪的是它随 intellisense 一起出现,并在 Element
等其他所有内容中给出相同的错误, Comment
等..我错过了什么?
XmlTextReader reader = new XmlTextReader(xmlDoc);
List<string> paths = new List<string>();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element && reader.Name == "Paths")
foreach(XmlNodeType.Text aa in reader.ReadInnerXml())
paths.Add(aa);
}
reader.Close();
XML 文件
<Config>
<Paths>
<Input>C:\</Input>
<Output>C:\</Output>
<Log>\Logs</Log>
</Paths>
<SystemOwnerRoles>
<Supplier>SUPPLIER</Supplier>
<Mop>MOP</Mop>
</SystemOwnerRoles>
</Config>
XmlNodeType
是一个枚举。 XmlNodeType.Text
是一个值,而不是类型,但您正试图将其用作 aa
变量的类型。此外 ReaderInnerXml()
returns a string
,因此不清楚您希望如何对其进行迭代。
你有为此使用XmlTextReader
吗?使用 LINQ to XML,几乎所有 XML 工作都变得更简单。例如,这就是我认为您需要的全部内容:
var paths = XDocument.Load(xmlDoc)
.Descendants("Paths")
.Elements()
.Select(element => (string) element)
.ToList();