解析されたaspxファイルを文字列にロードしようとしています。これは、正しい情報を挿入するために処理する必要のあるセクションも含まれている、かなりの量のhtmlを含むページがあるためです。このページは、確認ページとして表示する必要があります。また、ユーザーがフォームを送信したときに確認メールで送信する必要があります。
確認ページの表示は非常に簡単ですが、コードの重複を防ぐための私の考えは、aspxファイルを文字列変数にレンダリングして電子メールのコンテンツとしても使用することです。
すべてのコンテンツを巨大な複数行の文字列として追加し、それをaspxページにロードしてから電子メールにロードできることに気付きましたが、このソリューションは私にとって厄介であり、必要に応じてアプリケーションを再コンパイルする必要がありますコンテンツを変更します。
おそらく誰かが私が試みていることを達成するためのより良い方法を提案することができますか?
私が思いついたコードは以下のとおりですが、ブラウザに送信される前にProcessRequestからの出力を何らかの方法でキャッチできるかどうかはわかりません。
IHttpHandler handler = PageParser.GetCompiledPageInstance("/SubmitConfirmation.aspx?appid=" + this.Id, "SubmitConfirmation.aspx", HttpContext.Current);
handler.ProcessRequest(HttpContext.Current);
string str_out = ???;
基本的に、私が達成しようとしていることは、次のPHPコードが行うことと同じです。
<?php
ob_start();
include("SubmitConfirmation.php");
$str_out = ob_get_contents();
ob_end_clean();
?>
どんな提案でも大歓迎です。