そのため、標準の ASP.Net ページから HTML を取り出して遊んでいます。次のように、Render メソッドをオーバーライドしました。
protected override void Render(HtmlTextWriter writer)
{
MemoryStream memoryStream = new MemoryStream();
try
{
using (StreamWriter streamWriter = new StreamWriter(memoryStream))
{
var textWriter = new HtmlTextWriter(streamWriter);
base.Render(textWriter);
memoryStream.Position = 0;
using (StreamReader reader = new StreamReader(memoryStream))
{
var text = reader.ReadToEnd();
Response.Write(text);
reader.Close();
}
}
}
catch(ObjectDisposedException)
{
// The stream writer is already disposed?
}
finally
{
memoryStream.Dispose();
}
}
これは、8.00 KB (8,200 バイト) 未満のファイルでうまく機能します。ファイルがそれよりも大きい場合、末尾のテキストはすべて切り取られています。
誰か提案がありますか?