問題タブ [structuremap3]
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 - StructureMap: IUser をコンストラクターに挿入する方法
私は ASP.NET MVC 5 Web サイトを持っており、自分のクラス (http コンテキストを知らない) から現在のユーザー情報にアクセスしたいと考えています。そのクラスにどのように注入できますか?
どうやら、IUser
MVCコントローラーにも注入できません。このエラーがスローされます。
System.MissingMethodException: このオブジェクトにはパラメーターなしのコンストラクターが定義されていません
ユーザー情報を手動で渡したくありません。
ありがとう
authentication - NancyFxのコンテナからIUserIdentityを登録して取得するには?
私は NancyFx で FluentValidation を使用しています。現在のユーザーに対して、現在のコンテキストに対していくつかのデータを検証したいと考えています。残念ながら、そのような情報を登録してコンテナー (私は StructureMap を使用しています) から取得する方法の例を見つけることができません。
Docs 「コンテキストはナンシーのほとんどの場所で利用できるはずなので、現在のリクエストを呼び出しているユーザーの ID を取得することは問題になりません。」しかし、コンテナにはデフォルトではありません。
リンク、方向はありますか?
あなたの助けに感謝します。
asp.net - デフォルトで一意のオブジェクト インスタンスを解決するように StructureMap のネストされたコンテナを設定する
StructureMap のドキュメントによると、コンテナーのデフォルトの動作は、親コンテナーが要求されるたびに新しいオブジェクト インスタンスを解決し、ネストされたコンテナーが同じオブジェクト インスタンスを解決することです。
99% のケースではこれで問題ありませんが、ネストされたコンテナを親コンテナと同様に動作させ、メソッドに依存することなくデフォルトで新しいオブジェクト インスタンスを解決する方法があるかどうか知りたいと思っています.AlwaysUnique()
。
これは可能.AlwaysUnique
ですか、それともオブジェクトごとに行う唯一の方法ですか?
c# - コンストラクター インジェクションに適していないオブジェクトで Structuremap 3 を使用するにはどうすればよいですか?
StructureMap 2.x から 3.x に移行しています。大きな変更点の 1 つは、使用ObjectFactory
すると次の警告が表示されることです。
'StructureMap.ObjectFactory' は廃止されました: 'ObjectFactory は StructureMap の将来の 4.0 リリースで削除されます。今後の作業のために Container クラスを使用することをお勧めします。
したがって、ほとんどの場合、解決は非常に簡単ですIContainer
。コンストラクターとして渡します。残念ながら、これはデフォルトのコンストラクターを必要とする ASMX Web サービスまたは属性には適していません。つまり、おそらくService Locator Pattern、プロパティ インジェクション、または独自の ObjectFactory 実装の記述に行き詰まっていることになります。
この不幸な問題に対処するための好ましい方法は何ですか?
編集:私のコンテナーがアセンブリ スキャンを実行することは言及する価値があります。
c# - StructureMap は、コンストラクターに注入する必要があると考え、例外をスローします
アプリケーションで StructureMap と ASP.Net Identity を使用しています。この行が私の中にあるときApplication_Start
これはStructureMapControllerFactory
次のとおりです。
return ObjectFactory.GetInstance(controllerType) as Controller;
StructureMapConfigurationException
次のように例外をスローします。
しかし、行を削除するControllerBuilder.Current.SetControllerFactory(new StructureMapControllerFactory());
とすべてうまくいくので、私のコードではなくStructureMapの問題です。
asp.net-web-api2 - 値を null にすることはできません。パラメーター名: Web API2 プロジェクトの StructureMap.WebApi2 の httpContext
Web API 2 プロジェクトに StructureMap.WebApi2 nuget パッケージを使用しました。Web API コントローラーは、コンストラクター インジェクションを使用して、StructureMap Ioc によって解決する必要があるリポジトリの依存関係を挿入します。プロジェクトを実行しようとすると、常に以下のエラーが発生します: 値を null にすることはできません。パラメータ名: httpContext InnerException を確認しようとしましたが、値が null です。StructureMapDependencyScope.cs StackTrace からこの例外を取得しています: c:\Users\sapatro\Documents\Visual Studio 2013\Projects の DemoStructureMapWebAPI.DependencyResolution.StructureMapDependencyScope.get_HttpContext() の System.Web.HttpContextWrapper..ctor(HttpContext httpContext) で\DemoStructureMapWebAPI\DemoStructureMapWebAPI\DependencyResolution\StructureMapDependencyScope.cs: DemoStructureMapWebAPI.DependencyResolution の 69 行目。
上記の問題を解決するための最良の方法を誰かに提案できますか?