本文整理汇总了C#中System.IO.StringReader.XmlReader方法的典型用法代码示例。如果您正苦于以下问题:C# StringReader.XmlReader方法的具体用法?C# StringReader.XmlReader怎么用?C# StringReader.XmlReader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.IO.StringReader
的用法示例。
在下文中一共展示了StringReader.XmlReader方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: deserialize
public void deserialize()
{
Assert.Throws<ArgumentNullException>(() => XmlExtensions.Deserialize<object>(null));
Assert.Throws<InvalidOperationException>(() => new StringReader(string.Empty).XmlReader(true).Deserialize<object>());
var serialized = Guid.NewGuid().ToString();
var xml = new StringWriter().Do(writer =>
{
new XmlSerializer(serialized.GetType()).Serialize(writer, serialized);
return writer.ToString();
});
var xmlReader = new StringReader(xml);
using (var reader = new StringReader(xml).XmlReader(true))
{
var deserialized = reader.Deserialize(serialized.GetType());
Assert.False(ReferenceEquals(serialized, deserialized));
Assert.Equal(serialized, deserialized);
}
xmlReader.ReadToEnd();
xmlReader.Close();
xmlReader = new StringReader(xml);
using (var reader = xmlReader.XmlReader(true))
{
var deserialized = reader.Deserialize(serialized.GetType());
Assert.False(ReferenceEquals(serialized, deserialized));
Assert.Equal(serialized, deserialized);
Assert.False(reader.Read());
Assert.Equal(-1, xmlReader.Read());
}
Assert.Equal(serialized, new StringReader(xml).XmlReader(true).Deserialize<string>());
}
示例2: xml_reader_text_reader
public void xml_reader_text_reader()
{
Assert.Throws<ArgumentNullException>(() => ((TextReader) null).XmlReader());
const string Xml = "<?xml version=\"1.0\" encoding=\"utf-16\"?><article>text</article>";
var textReader = new StringReader(Xml);
Assert.Equal("text", textReader.XmlReader().Do(reader =>
{
Assert.False(reader.Settings.CloseInput);
Assert.True(reader.Settings.IgnoreComments);
Assert.True(reader.Settings.IgnoreWhitespace);
reader.ReadStartElement("article");
return reader.ReadString();
}));
Assert.Equal(-1, textReader.Read());
textReader = new StringReader(Xml);
Assert.Equal("text", textReader.XmlReader(true).Do(reader =>
{
//Assert.True(reader.Settings.CloseInput);
reader.ReadStartElement("article");
return reader.ReadString();
}));
Assert.Throws<ObjectDisposedException>(() => textReader.Read());
}