2

HtmlAgilityPackに問題があります。ストリームからドキュメントをロードし、ドキュメントに対していかなる操作も行わずに保存します。ドキュメントには、、、が含まれていますheader。ヘッダーとフッターの構造はまったく同じです。そして、オブジェクトを返します。コード:bodyfooterFilecontentresult

HtmlDocument ndoc = new HtmlDocument();
ndoc.Load(stream);                        //load from stream                          

using (MemoryStream ms = new MemoryStream())
{
   ndoc.Save(ms);                         //save back in stream
   ms.Seek(0, System.IO.SeekOrigin.Begin);
   fileBytes = ms.ToArray();
}

FileContentResult file = File(fileBytes, "text/html");
return file;

ブラウザでドキュメントを見ると、すべてがそこにありましたが、フッターが消えました。するとOptionOutputAsXml、このフッターで使っていたものが来ましたが、フッターの中身はまだ消えていました。

次のコードを使用した場合。htmlagilitypackを削除するだけです。ストリームからFileContentResultを直接作成します。その後、すべてが完璧であり、独自の位置にあります。コード:

using (MemoryStream ms = new MemoryStream())
{
   stream.CopyTo(ms);            //copy stream contents in memorystream object
   fileBytes = ms.ToArray();
}

FileContentResult file = File(fileBytes, "text/html");
return file;

誰かがHtmlAgilityPackの問題を教えてもらえますか?

4

0 に答える 0