2011-08-08 12 views

答えて

6

はい、あなたは現在のHTTPコンテキストを取得するために、静的HttpContext.Currentプロパティにアクセスすることができます。

このプロパティは、検証を実行しているスレッドや単体テストなどの非httpリクエストではnullを返すことがあります。

より多くのテスト可能なコードを作成するために、あなたが.Currentに行った呼び出しを抽象化したい場合があります。これを行うには、あなたの抽象化されたメンバーは、このように、HttpContextBaseを返すがあります。

return new HttpContextWrapper(HttpContext.Current); 

この抽象化は、あなたがより簡単にテスト用のモックHTTPコンテキストベースインスタンスに渡すことができるようになります。

+0

ありがとう、私はおそらく私は基本メンバーまたはパラメータを介してアクセスする必要があると思った。洞察のための歓声。 – GONeale

0

代わりにRemoteValidationAttributeを使用するのはなぜですか?

+0

これは理想的だと思う方法を理解していますが、実際にはフォームロード時に検証を適用する必要がありました(特定の条件が満たされていれば、フィールドに検証が存在します。これに適した解決策です。 – GONeale

関連する問題