私は城ウィンザーを使用して初心者です。 Apress Pro Mvcの本で紹介されました。私が働いているプロジェクトでは、私はmvcコントローラ工場の代わりにcastlewindsorコントローラ工場を使用します。だから私はパラメータ化されたコンストラクタを持つことができ、私は依存関係を注入することができます。 コンストラクタを経由せずにコントローラクラスのプロパティに値を注入するようにwindsorcontrollerファクトリに指示する方法はありますか? 私がこれをやりたい理由は、ログの依存関係があるためです。 Emailler Dependency;データベースの依存関係。テーマエンジンdEpendency;私はコンストラクタでこの多くのパラメータパラメータを使用したくないです。CastleWindsorもクラスフィールドを埋めています
2
A
答えて
2
デフォルトでは、ウィンザーはサービスの実装を解決すると、すべてのプロパティに満たすことができるパブリックセッターを設定します。
ただし、インスタンスが常に有効な状態になることを保証するために、依存関係の解決をコンストラクタに入れることは意味があることに注意してください。ユニットテストのシナリオを考えてみましょう。ここで、テストを書く人は、どの依存関係を提供する必要があるかを知る必要があります。すべての依存関係がc'torに入ると、テスト担当者はテストされたインスタンスに必要なすべての依存関係(スタブまたはモック)を提供するしかありません。デフォルトで
とにかく、あなたの質問については、ウィンザーサポートC'tor と財産注入
1
城ウィンザーは、自動的にそれを埋めるために方法を知っている公共のセッターを持つ任意のプロパティを記入します。
あなたがいる限り、コンテナは、それはそれを解決し、注入しようとしSomeDependencyを解決する方法を知っているように設定されるクラスに
public MyClass {
public SomeDependency {get; set;}
}
を持っている場合、これが意味しています。
このデフォルトの動作が面倒なことがあることがあります。 This facilityは、プロセスをきめ細かく制御できます。
関連する問題
- 1. クラスフィールドを埋めるためにHibernateコールセッターメソッドを強制する方法は?
- 2. CastleWindsor。 BuildDatabaseConfiguration&Kernel
- 3. 埋め込まれたドキュメントと埋め込まれていないドキュメントを同時に埋め込む
- 4. トップレベルのテキストボックスにtkinterチェックボックスを埋め込もうとしています
- 5. Android、ウェブページにYouTube動画を埋め込もうとしています
- 6. Joomla! 1.7モジュールにエクステンションを埋め込もうとしています
- 7. WebSharperクライアントサーバーF#アプリケーションにPowerBIレポートを埋め込もうとしています
- 8. JSONデータでUITableViewを埋めても動作しません。
- 9. クラスフィールド
- 10. 埋め込みCSSファイルが埋め込まれていないhtml
- 11. Collectstaticは何千ものファイルを埋め込みますDjango
- 12. JSクラスフィールド
- 13. コンテナビューで埋め込みセグを遅らせてもよろしいですか?
- 14. HTMLPurifierを使用して、すべてを除外しますが、埋め込みコードを埋め込みます
- 15. CastleWindsorを使用してIServiceBehaviorの異なる設定を登録します。
- 16. Django EmailMultiAlternativesに埋め込み画像をHTMLで埋め込んでいます
- 17. Instagram埋め込みキャプションにHTMLを埋め込みます
- 18. カフェカで埋め込まれたデベジウムまたはデベジウムのみが埋め込まれていますか?
- 19. ブラウザは埋め込みベース64イメージもキャッシュできますか?
- 20. 最も近い観測値の平均でミスを埋める
- 21. 情報をクラスフィールドにリンクする最も良い方法は何ですか?
- 22. サブクラスが親クラスフィールドを継承していません
- 23. Ghostscript - フォントを埋め込んでも使えません
- 24. border-imageプロパティが埋め込まれたGoogleマップが埋め込まれていますか?
- 25. Dapperは、右の `splitOn`を使っても、エンティティを埋めませんか?
- 26. Mongoid - 埋め込み可能なのは何ですか?モデルは埋め込まれていますか?
- 27. イメージは、ヘッダーの下のスペースを埋めるのではなく、完全なdivを埋めています。
- 28. ボタンがGridLayout、Javaのセル全体を埋めています
- 29. 埋め込みコンテンツを使用していますか?SEO /ランキング
- 30. (... rest)パラメータを配列で埋めていますか?
とそれがプロパティを埋めるのではなくコンストラクタである場合、どこを見ているべきですか? – user149383
私は、ウィンザーのユーザーグループにあなたのコードを投稿したいと思います。あなたはおそらくすぐにヘルプを得るでしょう –