XDocument インスタンスが与えられた場合、そのインスタンスを表す TextReader を簡単に取得するにはどうすればよいですか?
私が思いついた最高のものは、次のようなものです(どこxml
に XDocument インスタンスがあります):
var s = new MemoryStream();
var sw = new StreamWriter(s);
xml.Save(sw);
sw.Flush();
s.Position = 0;
TextReader tr = new StreamReader(s);
しかし、これは少し不格好に思えるので、もっと簡単な方法はないかと考えていました。
編集
上記の例は、インスタンス全体を XML 文字列に変換し、その文字列に対して TextReader を作成することと同じです。
コンテンツ全体をメモリに読み込むよりも、ストリームのような方法があるかどうか疑問に思っていました。