考虑xml文件的一部分。
<Element>Value</Element>
我使用XmlTextReader来读取xml文件。所以我使用了while(reader.Read())
现在,当我到达Element
时,我想获得它的价值。
if(reader.NodeType == XmlNodeType.Element && reader.LocalName == "Element")
{
reader.Read();
var var = reader.Value;
}
有没有办法将这两行结合起来?单个表达式等于:
reader.Read();
var var = reader.Value;
请注意,我不想跳到Element。我正在使用XmlTextReader,我逐行读取xml。
唯一的原因是保持代码简单。如果可能的话,我感觉好多了。
答案 0 :(得分:2)
您可以创建一个扩展方法
public static string ReadValue(this XmlTextReader reader)
{
reader.Read();
return reader.Value;
}
用法:
if(reader.NodeType == XmlNodeType.Element && reader.LocalName == "Element")
{
var var = reader.ReaderValue();
}