問題タブ [unity-container]
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.
unit-testing - Unity RegisterInstance メソッドに相当する Ninject
Ninject には、unity の registerinstance と同等のメソッドがありますか。
モックオブジェクトを作成して登録したい。
ありがとう
inversion-of-control - MEF 対任意の IoC
Microsoft の Managed Extensibility Framework (MEF) とさまざまな IoC コンテナー (Unity など) を見ると、あるタイプのソリューションを別のタイプのソリューションよりも優先して使用するタイミングがわかりません。より具体的には、MEF はほとんどの IoC タイプ パターンを処理し、Unity のような IoC コンテナーは必要ないように思われます。
理想的には、MEF の代わりに、または MEF に加えて、IoC コンテナーが使用される適切なユース ケースを見たいと考えています。
unity-container - WPF を使用した Prism の Unity
Prism では、モジュール レベルで unity の別のインスタンスを使用して、特定のモジュールにクラスを登録することができます。これにより、アプリケーション レベルの unity を異なるモジュールに非常に多くのクラスでロードしなくなります。
c# - .Net RIA サービス: DomainService にはパラメータのないコンストラクタが必要ですか?
Silverlight コンポーネントを含む ASP.Net アプリケーションで .Net RIA Services の July CTP を使用しています。Silverlight から RIA サービスを呼び出しています。
ドメイン サービス (LinqToEntitiesDomainService オブジェクト) で Unity とコンストラクター依存性注入を使用しようとしたときに、問題が発生しました。Silverlight アプリケーションは、パラメーターなしのコンストラクターがないことについて不平を言うようになりました。
パラメーターのないコンストラクターは使いたくありません。Unity にコンストラクターの引数を解決してもらいたいのです。これは可能ですか?私は何か間違ったことをしていますか?または、コンストラクターの引数を挿入する別の方法を見つける必要がありますか?
これが私が得ているエラーです:
configuration - 再びlog4netとUnity IOC構成について
私はさまざまなサイトに散らばっているこれらの質問のいくつかにぶつかりました.log4netが「ある」軽量ラッパーの価値に向けてl4nの役人によって答えが紡がれているようです(わかりませんか?)および同様の心構え-驚くべき事実。
しかし、ユーザーが求めているのは (これが私の質問です)、流暢な構成インターフェースで log4net オブジェクト モデルを registertype/registerinstance シーケンスに適合させる方法です。
ここでの目標は、l4n を再ラップすることではなく、流暢なフローをハイジャックする必要のない適切な参照を取得することです。
悪い例: LogManger.GetLogger メソッドから ILog の構成済みインスタンスへの参照を取得し、それを下流のオブジェクトのプロパティに挿入するのに十分早い段階で流暢なフローに入れたいと考えています。
そこで、せっかちな提案に応えて、正規の方法で ILog の通常のインスタンスを作成してみました。
そのため、Unity コンテナーへの参照を追加して、私の素晴らしい人生を続けることは、(本当の意味で楽なという意味で) 取るに足らないことのように思えます。
ただし、RegisterInstance メソッドの署名では、インターフェイスではなく「型」が必要です。
log4net オブジェクト モデルを検索していない人は、次のように述べています。l4n は「ラッパー」であり、Log の実際の「タイプ」を取得することはできません。
だから今、私はテストする必要があります。そして、それが何を意味するかを知っています.1分かかるかもしれませんが、1時間か4時間かかる可能性が高いです.
ただし、正規のセットアップに関する省略された部分を除いた以下は機能しました。
したがって、元の Log オブジェクトのハッシュコードと、私の小さな Context オブジェクトのプロパティに挿入された Log オブジェクトのハッシュコードは同じです。
でも...
インジェクション プロセスでは、Context オブジェクトの Log プロパティをそのインターフェイスを介して公開する必要がありました。つまり、これはもはや静的オブジェクトではありません。そして、log4net ILog オブジェクトが静的であるかどうかは、それがシリアライズ可能であり、「ランタイムが不安定になる」という劇的な警告 (マトリックス ファンだけにとって本当に意味がある) なしでアセンブリ間でマッシュできるかどうかに関する決定要因のようです)。
思いとどまるわけではありませんが、Resharper の気の利いた「バッキング フィールドを持つプロパティ」を使用し、バッキング フィールドを静的に設定し、Interface プロパティは非静的のままにしました。うまく構築され、テストは緑色で実行されました。
そのため、再構築も行いましたが、うまくいきました。したがって、これが統合テストに発展するとき、log4net is not serializable の大失敗をこっそり通り過ぎるでしょう。
だから多分これは役立つでしょう
ありがとう
スタート
linq-to-sql - 依存性注入で使用するlinq2sql?
linq2sqlで依存性注入を機能させる方法を知っている人はいますか? これが私の状況です..
ここでできる限り説明します。
DBML(linq2sql)とクラスなどを持つ基本クラスがあります..このDBMLは複数のプロジェクトに共通です..各プロジェクトには独自のDBMLがありますが、私が使用している共通のdbmlにあるすべてのテーブルなどがあります基本クラスで-それは理にかなっていますか?!
私のプロジェクトのそれぞれは、基本クラスを継承してそれを拡張することによって新しいクラスを作成します...しかし、プロジェクトで特に使用するdbmlにはCOMMONにあったすべての機能といくつかの機能があるため、もちろん、dbmlを再注入する必要があります
私はここで少し迷っています..誰もがこれを達成する方法を知っています..私はそれを十分に説明したいと思います:-)
Unity などを使用したいと思っていましたが、linq2sql によって作成されたクラスはインターフェイスを実装していないようです...これは DI で問題になるのでしょうか?
ありがとう
.net - Aop、Unity、インターセプター、および ASP.NET MVC コントローラーのアクション メソッド
log4net を使用して、ASP.NET MVC コントローラー アクション メソッドへのすべての呼び出しをログに記録します。
ログには、コントローラーに渡されたすべてのパラメーターに関する情報が含まれている必要があります。
各アクション メソッドでこれを手作業でコーディングするのではなく、 Unity を介してインターセプターを使用した AoP アプローチを使用したいと考えています。
これは、インターフェースを使用する他のいくつかのクラスで既に機能しています ( を使用InterfaceInterceptor
)。ただし、コントローラーの処理方法がわかりません。インターフェイスを使用するためにそれらを少し作り直す必要がありますか、それとももっと簡単な方法がありますか?
編集
VirtualMethodInterceptorは正しいアプローチのようですが、これを使用すると次の例外が発生します。
xml - ジェネリックスを使用したUnityXML構成
UnityXML構成とジェネリックスで少し頭痛がします。私はこれらのファイルを持っています:
Unity XML構成を使用して、OrderリポジトリをDispatchOrderProcessクラスに挿入したいと思います。これまでのところ、私はそのようなものを持っています: