問題タブ [structuremap]
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.
asp.net-mvc - ASP.NET MVC と StructureMap に問題がある
私のマシンでは StructureMap が正常に動作しています。すべてがうまく機能します...存在しないリソースをリクエストするまで。404 の代わりに 500 エラーが発生します。
例えば。http://localhost:6969/lkfhklsfhskdfksdf
ネットをチェックしたところ、構造マップコントローラークラスを修正するように言われました。それと喜びをしました!-元のデフォルトの 404 イエロー スクリーン ページ- が表示されます。わかりました、それは私の 500 エラー ページよりも優れています。
しかし、カスタム 404 ページに移動したい :( 正当なコントローラーで悪いアクションを呼び出すと、カスタム 404 ページが表示されます。
私のglobal.asaxには、カスタムルート、デフォルト、最後に404ルートがあります。
これが私の構造マップコントローラーコードです:
何か案は?どうにかしてストラクチャ マップ コントローラ ファクトリをglobal.asax
ルート リストにバブルバックさせる方法はありますか? または、何か本当に悪いことをしたので、他のものを修正する必要があります。
乾杯!
unit-testing - StructureMap 2.5.3に付属のMoqAutoMockerを使用するにはどうすればよいですか?
StructureMapに付属しているMoqAutoMockerクラスを使用しようとしていますが、その使用方法の例が見つかりません。私が続けなければならないのは、RhinoMocksを使用するStructureMapサイトの例です。
私がやろうとしているのは、Getメソッドを使用して自動モック/注入された依存関係の1つへの参照を取得することです。上記のリンクによると、私はこのようなことをすることができるはずです
Get関数がRhinoMocksモックオブジェクトへの参照を返すことを示すAssertWasCalledの使用方法に注意してください。MoqAutoMockerを使用すると、これと同じコードが機能しません。
コンストラクターのISecurityServiceに依存するクラスSignInControllerがあります。例ではRhinoAutoMockerが使用されているようにMoqAutoMockerを使用すると、これを実行できるはずです...
しかし、問題は、セットアップメソッドにアクセスできないことです。この場合、autoMocker.Getの呼び出しは、Mock <ISecurityService>ではなく、ISecurityServiceのインスタンスを返しているようです。
誰かがこのようにMoqAutoMockerをうまく使用しましたか?私はそれを間違っているだけですか?
asp.net-mvc - 依存性注入を使用してASP.NetMVCソリューションを整理するための最良の方法は何ですか?
私は新しいASP.NetMVCプロジェクトの開発の初期段階にあり、このプロジェクトを使用してDIに参加しています。構造マップを使用することは間違いありませんが、それは私が求めていることではありません。私が理解しようとしているのは、ソリューションを整理するための最善の方法です。単体テストプロジェクトとモデルの両方が、依存関係をマップするための構成ファイルを取得しますか、それともすべてを支配する1つのクラスがありますか?
また、私がこれに深く入り込む前に避けるべき初心者の罠はありますか?
どうもありがとう、すべて....。
更新 「ソリューションを整理する」と言うときは、ファイル/フォルダーの数などではなく、DIに関連するクラスを構造化する方法を指していることを追加する必要があります。特に、ブートストラッパーを管理する方法。私の側の言い回しが悪いと混乱を引き起こす可能性がある場所がわかります。
singleton - Assembly と Cache by Singleton で Structuremap を自動スキャン タイプに設定するにはどうすればよいですか?
mvc.net と StructureMap を使用して、すべてのリポジトリとサービスをスキャンして登録しています。次に、Singleton で登録してキャッシュしたいと思います。どのようにできるのか?
inversion-of-control - StructureMap:文字列以外のコンストラクター引数を使用したEqualToAppSetting
与えられた
いつ
次に、StructureMapは次の例外をスローします
文字列以外の引数でEqualToAppSettingを使用する方法はありますか?
asp.net-mvc - ASP.NET MVCコントローラーに依存性を注入するさまざまな方法はありますか?
私がWebで見たほとんどのサンプルでは、MVCコントローラーのDIは次のように実行されます
カスタムControllerFactoryが使用され、選択したDIフレームワークを利用して、リポジトリが挿入されます。
上記がより良いと考えられるのはなぜですか
これでも同じ結果が得られますが、カスタムコントローラーファクトリは必要ありません。
テストに関する限り、テストアプリは個別のBootStrapperを持つことができます。そうすれば、コントローラーがテストされているときに偽のリポジトリーを取得でき、実際に使用されているときに本物のリポジトリーを取得できます。
asp.net-mvc - NHibernate がデータベースから新しいデータを取得できません
ASP.NET MVC アプリケーションのデータ アクセス層として NHibernate を使用しています。また、構造マップを IoC コンテナーとして使用しています。セッション ファクトリをシングルトンとして作成し、リクエストごとにセッションを作成するように Structre マップを構成しました (InstanceScope.Hybrid)。基本的な CRUD 操作は問題なく実行できます。
現在、バックグラウンド プロセスが 30 秒ごとに実行されており、いくつかのリポジトリ (セッションを使用) を使用しています。そして、このバックグラウンド プロセスは、何らかの理由で新しいデータを取得できません。多分私は簡単なことを見逃しています。私はグーグルを試しましたが、有用なものを見つけることができませんでした. 誰かが私を正しい方向に向けてくれたら、本当に助かります。
編集:
2 番目のレベルのキャッシュが有効になっているかどうかわかりません。NHibernate の初心者です。休止状態の構成ファイルを以下に貼り付けます。
私が知りたい主なことは、NHibernate を使用した典型的な Web アプリケーションで既に使用されている設計/設計パターンがあるかどうかです。また、データベース設定が別のアプリから更新された場合、ステートレス セッションを使用すると問題が解決しますか?
structuremap - 構造マップ-私は最も貪欲なコンストラクターを使いたくありません!
プロジェクトで構造マップを使用してNCommonNHRepositoryを構成しようとしています。最も貪欲なコンストラクターを選択しないようにするにはどうすればよいですか?
私の構造マップ構成
乾杯ジェイク
dependency-injection - StructureMap を使用しているときに循環参照を検出してデバッグする方法はありますか?
最近は、よりシンプルで再利用しやすい小さなオブジェクトを多数使用しています。ほとんどの場合、StructureMap (優れたツールです) を使用してこれらのオブジェクトを互いに挿入しても問題はありません。しかし、時々、私は失敗し、スタック オーバーフロー例外 (tm) を装って素敵な循環参照を取得します。
最後のテスト実行以降の最近の変更をすべて確認する以外に、StructureMap は循環参照をデバッグするためのメカニズムを提供していますか、またはこの状況で役立つ簡単なツールはありますか?
みんな、ありがとう!
structuremap - Structuremap 構成: 1 つのオブジェクト、複数のインターフェース
タイプ「SessionObject」のこのオブジェクト「mySessionObject」があります。IMessageHandler<MessageA>
インターフェイスと を実装しますIMessageHandler<MessageB>
。これらのオブジェクトの 1 つだけを保持し、HttpSession 全体を通じて有効にする必要があります。
HttpSession の有効期間中にいつでもObjectFactory.GetInstance<IMessageHandler<MessageA>>()
、またはを呼び出して取得できるように、構造マップに登録するにはどうすればよいObjectFactory.GetInstance<IMessageHandler<MessageB>>()
ですか?