2

VS 2008 で C#/SQL ASP.NET Web アプリケーションを開発しています。現在、Server.Transfer メソッドを使用して、ある ASPX.CS ファイルから別の ASPX ファイルに制御を移しています。初めて、これは機能します。しかし、制御がこの新しいファイルに移された後、次の条件が発生します。

if (restart == false)
            {

「restart」はブール変数です。このステートメントの後、すぐに制御を同じ ASPX.CS ファイルに戻し、Server.Transfer メソッドを再実行しようとします。今回は、次の例外とスタック トレースが表示されます。何が原因か知っていますか?私はこれを読んでみましたが、私にはあまり意味がありませんでした。

System.Web.HttpException はユーザー コードによって処理されませんでした Message="DataMatch.aspx の子要求の実行中にエラーが発生しました。" Source="System.Web" ErrorCode=-2147467259 StackTrace: System.Web.HttpServerUtility.Execute (文字列パス、TextWriter ライター、ブール値 preserveForm) で System.Web.HttpServerUtility.Transfer (文字列パス、ブール値 preserveForm) で System.Web C:\Documents and Settings\Admin\My Documents\Visual Studio 2008\Projects\AddFileToSQL\AddFileToSQL\Default.aspx.cs の AddFileToSQL._Default.btnAppend_Click(Object sender, EventArgs e) の .HttpServerUtility.Transfer(String path): System.Web.UI.HtmlControls の System.Web.UI.HtmlControls.HtmlInputButton.OnServerClick(EventArgs e) の 109 行目 System.Web.UI.HtmlControls.HtmlInputButton.RaisePostBackEvent(String eventArgument) の System.Web.UI.HtmlControls.

4

1 に答える 1

3

Response.Redirect("New page URL")Server.transfer で問題が発生しているため、試してみることをお勧めします。Response.Redirect は、ページを変更するための「よりクリーンな」方法のようです。比較については、http://www.developer.com/net/asp/article.php/3299641/ServerTransfer-Vs-ResponseRedirect.htmを参照してください。

于 2010-04-15T18:30:43.747 に答える