1

私は最初の ASP.NET から Mono への移植に取り組んでいます。テストするいくつかの機能を備えたテストサイトを構築しました。1 つは単純なフォーム投稿です。私が得ているエラーはこれです:

引数を null にすることはできません。パラメータ名:inputString

説明: HTTP 500。リクエストの処理中にエラーが発生しました。

スタックトレース:

System.ArgumentNullException: 引数を null にすることはできません。パラメータ名: System.Web.UI.ObjectStateFormatter.Deserialize の inputString (System.String inputString) [0x00000] in :0 System.Web.UI.LosFormatter.Deserialize の inputString (System.String input) [0x00000] in :0

セッション変数またはフォーム入力 (Request.Form) を処理するすべてのコードをコメントアウトしてデバッグしようとしましたが、それでもエラーが発生しました。ページロード内のすべてのコードもコメントアウトされていますが、サイコロはまだありません。このフォームは、IIS 上の ASP.NET として正常に動作していました。多分私がしなかった設定がありますか?

** 編集 ** 基本メソッドのいくつかをオーバーライドした System.Web.UI.Page から継承するために使用するカスタム Page クラスに問題を突き止めることができました。System.Web.UI.Page に戻すと、エラーはなくなります。カスタム Page クラスが必要です。フォーム ポスト/ポストバックを実行すると、エラーが発生します。初期ロードは正常に機能します。

4

1 に答える 1

1

* 問題解決 * LosFormatter.Deserialize メソッドにありました。渡された文字列が null かどうかを確認してから、代わりに string.IsNullOrEmpty を使用するように修正しました。たぶん、空の文字列も好きではありません。

于 2012-06-11T22:54:02.533 に答える