問題タブ [controllercontext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
4667 参照

asp.net-mvc - UpdateModel を使用するモックを使用せずにアクションを単体テストするにはどうすればよいですか?

私は、 ASP.NET MVC Beta 1に関する Scott Guthrie の優れた投稿に取り組んできました。その中で彼は、UpdateModel メソッドに加えられた改善と、それによって単体テストがどのように改善されるかを示しています。同様のプロジェクトを再作成しましたが、UpdateModel への呼び出しを含む UnitTest を実行するたびに、controllerContext パラメーターを指定する ArgumentNullException を受け取ります。

私のモデルから始めて、関連するビットは次のとおりです。

コントローラーのアクション:

そして最後に、失敗している私の単体テスト:

ArgumentNullExceptionUpdateModelへの呼び出しによって、 「値を null にすることはできません。パラメータ名: controllerContext」というメッセージがスローされます。テストの実行中に存在しないUpdateModelが必要な場所があると想定しています。System.Web.Mvc.ControllerContext

また、どこかで何か間違ったことをしていて、正しい方向に向ける必要があるだけだと思います。

助けてください!

0 投票する
1 に答える
2247 参照

asp.net-mvc - rhino モックを使用して MVC RC1 の HttpSessionState をスタブするにはどうすればよいですか?

asp.net mvc rc1の最近の ControllerContext リファクタリングを利用しようとしています。セッションを簡単にスタブできるはずですが、次のコードを実行すると、2 行目で System.NullReferenceException が発生し続けます。

私は何を間違っていますか?

編集: この投稿の時点で最新バージョンの rhino があることを確認しました。

0 投票する
2 に答える
5806 参照

asp.net-mvc - ASP.NET MVC の HttpContext.Current に相当するコントローラー

現在実行中のコントローラーにアクセスして、適切な ActionResult の戻りをヘルパー メソッドにオフロードできるようにしたいと考えています。この目的のために、私は ControllerContext.Current であると思っていたものと同等のものを探していますが、そうではありません。ありがとう!

明確にするために編集: JavaScript ベースの一般的なフォーム コントロールがありますが、noscript で動作するようにオプションを追加したいと思います。現時点で、コントローラーは ViewData.Model を JSON 化された Models.FormResponse<T> に設定します。

この FormReponse は、投稿のステータスと生成されたエラー メッセージで設定されているため、スクリプト/ノースクリプト チェック (非表示のフォーム入力) を実行する GetActionResult() メソッドと、次のいずれかが必要です。

  1. Model を JSONed FormResponse に設定し、View() を返す、または
  2. FormResponse をセッションにシリアル化し、Redirect() を返します。

これは明らかに戻り値を変更し、毎回自分でチェックしたくないので、これを次のように呼び出すには、FormResponse の GetActionResult メソッドから View または Redirect を呼び出す必要があります。

より宇宙的な設計では、これがさらに堅牢になる可能性があることはわかっていますが、現時点ではnoscriptオプションは主要な機能ではないため、他のものを壊さない迅速な解決策が必要です.

アップデート #2

ActionResult クラスに実装された以下は、私のために仕事をします。ありがとうCVertex!

0 投票する
6 に答える
1078 参照

asp.net-mvc - 一体何がコンテキストですか?

どこを見てもコンテキストが見え始めています。ASP.NET MVCには、ControllerContexts、RequestContexts、HttpContexts、FormContextsがあります。Entity Frameworkには、ObjectContextsとDbContextsがあります。NinjectにはNinject.Activation.IContextがあります。

一体何がコンテキストですか?

0 投票する
1 に答える
768 参照

asp.net-mvc-2 - ビューとコントローラーの外部から現在のコントローラー名を取得する

ControllerContext オブジェクトを使用してみましたが、インスタンス化する方法がわかりません。ビューまたはコントローラーの外部のカスタム クラスでコントローラー名を取得しようとしていることを思い出してください。ありがとう、

0 投票する
1 に答える
1528 参照

.net - ビジネスオブジェクトからコントローラーコンテキスト/TempDataにアクセスする

交換できるセッション/一時データプロバイダーを構築しようとしています。デフォルトのプロバイダーはasp.netmvc上で機能し、ビジネスオブジェクトクラスから.netmvcTempDataにアクセスする必要がありました。tempdataがコントローラーコンテキストを介して利用できることは知っていますが、それがHttpContextなどを介して公開されているかどうかを確認できないようです。asp.netベースのセッションプロバイダーのみがこれを必要とし、他のプロバイダー(NoSQL DBなどを使用)はコントローラーコンテキストを気にしないため、コントローラーコンテキストを引数として渡したくありません。

さらに明確にするために、ここにもう少しコードを追加します。私のISessionインターフェースは次のようになります。このコードが本番環境に移行すると、セッション/一時データはNoSqlデータベースを使用して機能することが期待されます。しかし、開発テストなどのためにasp.netmvcセッション/tempdataの上で動作する別の実装も必要です。

パブリックインターフェイスISession

0 投票する
2 に答える
1028 参照

asp.net-mvc-2 - Azure での ControllerContext と HttpContext

Azure の設定で、HttpContext ではなく ControllerContext を使用することの間に何らかの影響があるかどうか疑問に思っています。HttpContext がスレッド静的であることがわかりました。これが Azure に関連しているかどうかを調べようとしています。

実際の違いがないと仮定すると、コントローラー アクションが呼び出されたときに 2 つが等しいことを保証できますか? コントローラー アクションで HttpContext.Current を呼び出す、確立されたアプリケーションの単体テストを作成しようとしています。アプリ全体のいくつかの場所で、変更が HttpContext.Current に直接行われます (具体的には承認の一部として)。ControllerContext に切り替えた場合、HttpContext.Current の変更は反映されますか?

ありがとう!

0 投票する
1 に答える
2532 参照

asp.net-mvc - アカウント/ログオン アクションのテスト

Visual Studio 2010 の組み込みテスト ツールとこの記事のクラス ライブラリを使用して Account/Loggon アクションをテストし、偽のコントローラー コンテキストを作成します。テスト メソッドを実行すると、次のコード行が表示されます。

例外をスローします:オブジェクト参照がオブジェクトのインスタンスに設定されていません

loggon アクションをテストするには、Cookie コレクションを持つ偽のコントローラー コンテキストを使用してコントローラーを作成する必要があると思います。これが私のテストコードブロックです:

0 投票する
1 に答える
3053 参照

c# - ControllerContext からの ActionDescriptor

現在実行中のActionDescriptorを取得する最適な方法は何ですかControllerContext?Action____Contexts

これまでのところ、私が見つけた唯一の方法は次のとおりです。

これは最適な方法ですか?

クラスに名前が付けられているという事実ReflectedControllerDescriptorは、ページ要求ごとに実行されるため、この操作に大きなコストがかかるのではないかと思います。ReflectedControllerDescriptorsそれに関連して、このクラスは内部的にキャッシュされますか、それとも実際に明示的にキャッシュする必要がありますか?

0 投票する
2 に答える
1877 参照

c# - ActionResult からリクエスト タイプを取得する

ActionResultクラスを延長しています。メソッドで、アクションが aまたは aであるかExecuteResultどうかを確認したいのですが、それを可能にするクラスにプロパティがないようです。からリクエストタイプを確認する方法を知っている人はいますか?GETPOSTControllerContextControllerContext