为什么我的XmlReader会返回一个空字符串?

时间:2012-03-01 12:01:00

标签: .net xml xmlreader

我需要从XmlReader获取完整的Xml字符串(长篇故事)。但是,在此示例代码中,最终变量theXmlString保持为空。为什么不为它分配Xml字符串?

string xmlConfig = @"<pdfMappings>
                        <pdfFile formTypeEnum=""Int_UT_Additional_Investment_Form_Ind_And_LE_direct"">
                            <perspective ngiAdminPerspectiveName=""Investor"">
                                <fieldMapping fieldName=""topmostsubform[0].Page2[0].first_names[0]"" mapTo=""CurrentInvolvedParty.FirstName""></fieldMapping>
                                <fieldMapping fieldName=""topmostsubform[0].Page2[0].surname[0]"" mapTo=""CurrentInvolvedParty.LastName""></fieldMapping>
                            </perspective>
                        </pdfFile>
                    </pdfMappings>";
var reader = XmlReader.Create(new StringReader(xmlConfig));

string theXmlString = reader.ReadOuterXml();

1 个答案:

答案 0 :(得分:7)

只需先开始阅读,然后使用Read()移至节点,然后ReadOuterXml()实际读取该值。

var reader = XmlReader.Create(new StringReader(xmlConfig));
reader.Read();
string theXmlString = reader.ReadOuterXml();

或者,您也应该能够使用reader.MoveToContent();