WebMatrix 3: RSS フィードを出力する(解決編)

執筆日時:

f:id:daruyanagi:20130417064526p:plain

できた!

と思ったけど、Internet Explorer ではちゃんと表示できない。なんか XML が尻切れトンボで出力されておる……

WebMatrix 3: RSS フィードを出力する - だるろぐ

この問題を解決しておきましょう。


初めは、

のかなぁ、と思って色々と調べたのだけれど、そうではなさそう。処理に時間がかかっているわけでもないし、出力されるデータのサイズもたいしたことはない。

結局、単に XmlWriter の使い方を間違っているだけだった。

Response.Clear();
Response.ContentType = "application/xml";
feed.SaveAsRss20(writer);
Response.End();

ではなく、

Response.Clear();
Response.ContentType = "application/xml";

using (var writer = XmlWriter.Create(Response.Output)) { feed.SaveAsRss20(writer); }

Response.End();

と、ちゃんと XmlWriter.Dispose()(実際は、XmlWriter.Close() かな?)を呼び出しておかなくてはいけないみたい。

f:id:daruyanagi:20130418031102p:plain

無事、すべて出力されたみたい。気をつけよう……