問題タブ [property-injection]

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 投票する
1 に答える
264 参照

asp.net-mvc-3 - Autofac を使用したプロパティ インジェクション

だから私は簡単な質問があります(私は思う)。

Autofacを使用してFilterAttributeでプロパティインジェクションを行うにはどうすればよいですか?

コンテナにサービスを登録しました:

または多分私はそれについて間違った方法で行っています。フィルター属性を注入できるようにしたい。

また、 を使う場合Register、あなたもやらなければならないことはあります.Asか?のようにRegisterType

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

apache-flex - Flex で 1 つのコンポーネントから別のコンポーネントにデータを渡す方法

サービスからの応答を取得する EmployeeResult という名前のクラスが 1 つあります。resulthandler 内で、名前、ID、年齢などの従業員の配列を取得しています。employeeView.mxml ファイル内に 1 つの dataGrid があります。employeeView.mxml ファイル内には、データグリッドへのデータプロバイダーである ArrayCollection があります。EmployeeResult ファイル内からその arraycollection を更新したいと考えています。Cairngorm フレームワークを使用する場合、シングルトン内で arraycollection を使用して目標を達成しました。mate フレームワークの場合、propertyinjector タグを使用しました。しかし、私の場合、フレームワークなしでこの目的を達成するにはどうすればよいですか。フレームワークやシングルトン クラスを使用せずにプロパティ インジェクションを実現する方法。

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

c# - 依存関係名をコンストラクターパラメーターとして挿入する方法

Autofac を使用すると、次のコードを使用して、プロパティ インジェクションを使用してインターフェイスに対して解決するクラスを登録できます。

ただし、私のLog4NetAdapterクラスには、呼び出し元のクラスの名前を必要とするコンストラクター パラメーターがあります。このようにして、呼び出し元のクラスの名前に基づいてイベントをログに記録できます。

typeof(dependency).Name各依存関係に独自のLog4NetAdapterインスタンスがある場合、依存関係の名前 (つまり) をプロパティ注入クラスのコンストラクターに注入するにはどうすればよいですか?

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

dependency-injection - プロパティの注入および/またはコントローラーの代替 MenuItem ビューへの追加

Orchard CMS でプロパティ インジェクションを機能させようとしています (そして失敗しています)。

以下のコードはビューのコード ビハインドのように動作しているため、これが必要です (恐ろしいことです)。その理由は、コンストラクター インジェクションを使用できるコントローラーがビューにないためです。これは、 の代替ビューMenuItem、つまりMenuItemLink-MyCustomMenuItem.cshtml.

コメントの内容を除いて、それ以上言うことはありません (以下のコードで設定しようとしているプロパティの NULL コメントに注意してください)。

ああ、Orchard のプロパティ インジェクション コードを適応させてみましたが、同様にうまくいきLoggingModuleません。

方法:

を。以下のプロパティ注入を機能させますか? (いずれにせよ必要になると確信しています)

b. (可能であれば)ビューの邪魔になる自分のコントローラー/ドライバーを取得して、代わりにコントローラーでコンストラクターインジェクションを使用できるようにしますか?

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

c# - Unity 静的プロパティ インジェクション

型を登録してコンテナをセットアップするクラスと、注入したい静的プロパティを含むクラスの 2 つのクラスがあります。私の問題は、プロパティが注入によって設定されることはないため、メソッドを呼び出すと、プロパティは常に null になります。

Dependency 属性を削除し、ClassOne で簡単な操作を行うと、

それは正常に動作しますが、プロパティに値を明示的に割り当てずにこれを行うことができるかどうか (つまり、コンテナーが属性を介して注入できるかどうか) を知りたいですか?

編集:

ありがとう。ClassTwo から静的宣言を削除し、ClassOne に ClassTwo の RegisterType と Resolve を追加し、InjectionProperty も追加しました。

しかし、それでも機能しません:S

0 投票する
0 に答える
324 参照

ajax - 2 つのウィンドウの jsf 2.0 ビュースコープは、互いに更新する必要があります

私は問題があります:

一部のデータ(リスト)の概要を含むView-Scoped Bean /ビューがあります。誰かがアイテムをクリックすると、別のビュー スコープのウィンドウ/ブラウザー タブが開き、クリックされたアイテムに関する詳細情報が読み込まれて表示されます。

必要なのは、ユーザーが詳細ページを開いたときにステータス画像を「未読」から「既読」に変更するための「概要ウィンドウ」だけです(私はajaxを好むでしょう)。しかし、これは2つの異なるビュースコープで機能しますか?

これどうやってするの?

どうもありがとうございました

追加。info: プロパティ インジェクション (他のビュー スコープ Bean) を試しました。ただし、値はリセットされます。コンテンツのない新しいビュースコープの概要 Bean を作成したようです)

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

java - クラスにプロパティを1つだけ注入する方法

クラスがあります

現在、このクラスには foo と bar を初期化するコンストラクターがあります。BazただしDataSource、バネを注入したいフィールドがあります。クラス コンストラクターはA、 NOT を除くすべてを初期化しますbazAでクラスが初期化されましたnew

Aクラスにはセッターがあります。豆

しかし、私は取得し続けます:

1. Bean ごとに 1 つのプロパティのみを注入し、残りはコンストラクタで初期化する方法は?

2.これを解決できる他の方法は何ですか?

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

c# - Ninject 循環依存関係 - 既にプロパティ インジェクションを使用

依存性注入を使用するプロジェクトで、循環依存性に問題があります。周りを見回すと、再構築 (私もその一部を行いました) 以外に、それを回避する唯一の方法は、プロパティ インジェクションを使用することのようです。これを試してみましたが、役に立たないようですが、理由はわかりません。これが問題を引き起こしているパスです。

現在、プロパティ注入を使用していることを知っているようで、すべての動作とファクトリが同じスコープ (今はスコープを呼び出しますが、スレッド スコープも試しました) と UserRepository にあります。

プロセスについての私の理解では、それは 4 になり、実際にオブジェクトを作成できるようになるはずです。この時点で、HomeController、IUserRepository、および IInternalUserBehavior への参照が含まれているはずです。その後、5 で動作し、完成した IUserRoleService を InternalUserBehavior に挿入します。最後に、以前にインスタンス化されたユーザー リポジトリを (同じスコープ内にあるため) ModelFactory のプロパティに挿入する必要があります。

したがって、私の質問の短いバージョンは次のようになると思います:プロパティ注入が循環依存の問題を解決しないのはなぜですか?

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

c# - Castle Windsor IoC プロパティ インジェクション。ChildClass コンストラクター内で BaseClass のプロパティを使用する

次のような基本クラスがあります

および BaseClass から継承された ChildClass.I は、ChildClass コンストラクター内で BaseClass の Property を使用する必要がありますが、必要に応じて IoC によって初期化されず、値が null です。そして、ChildClass のメソッド内で使用すると、Property が初期化されます。私は何を間違っていますか?

ISomeObjectをICコンテナに登録する方法は次のとおりです

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

exception - Castle Windsor のオプション プロパティの挿入中に発生した例外を処理するにはどうすればよいですか?

Castle Windsor 3.2 は、コンテナー内の診断ログという優れた追加機能を提供します。これにより、コンテナー ログを、アプリケーション ログの保存に使用されている log4net ログ ファイルにリダイレクトすることができました。

私が今やりたいことはException、オプションのプロパティを注入している間にコンテナが検出したものを実際にキャッチできるようにすることです。

私の特定の状況では、 Castle が私のコードを実行してクラスにプロパティを注入しようとしたときに、Oracleデータベース エラーが発生しました。ORA-28000: the account is lockedDatabaseBaseController

このDatabaseプロパティはnull、から継承するコントローラーのアクション メソッド内にいるときですBaseController。これはすべて、Castle Windsor が例外を「飲み込む」ために発生します。ユーザーが受け取る唯一のメッセージは次のとおりObject reference not set to an instance of an objectです。わかりましたが、実際の例外/理由をユーザーに表示したいと思いますORA-28000: the account is locked。このメッセージは、前述の診断ログのおかげで、Castle Windsor によってログに記録されます。catchこれはクールですが、ブロック内で例外を実際にキャッチできるようにしたいと考えています。

このシナリオはプロパティ インジェクションで可能ですか?