次の方法で Http 応答ストリームを 2 回読み取ろうとしています。
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
stream = response.GetResponseStream();
RssReader reader = new RssReader(stream);
do
{
element = reader.Read();
if (element is RssChannel)
{
feed.Channels.Add((RssChannel)element);
}
} while (element != null);
StreamReader sr = new StreamReader(stream);
feed._FeedRawData = sr.ReadToEnd();
ただし、StreamReader コードが実行されると、ストリームが最後に到達したため、返されるデータはありません。stream.Position = 0 でストリームをリセットしようとしましたが、これは例外をスローします (ストリームの位置を手動で変更できないためだと思います)。
基本的に、XML のストリームを解析し、生データ (文字列形式) にアクセスしたいと考えています。
何か案は?