問題タブ [ninject]
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.
c# - Designerを満足させながらUserControlビューに依存性注入を適用する方法は?
私はイベントを使用しません (ただし、問題を解決できる場合は喜んで使用します)。そのため、View クラスは次のようになります。
と
フォームを構築し、プレゼンターを構築してから、プレゼンターを Presenter プロパティに挿入します。すべてが桃色です。(そのシングルトン スコープのプレゼンターを除いて、それを行うためのより良い方法について何か考えはありますか? おそらく、プレゼンターのコンストラクター内のビューの Presenter プロパティに手動でプレゼンターを挿入するだけです: this.view.Presenter = this)。
しかし、StatisticsForm を StatisticsUserControl に変換し、それを MainForm にドラッグ アンド ドロップすると、Ninject によって MainForm に挿入されるのではなく、単に Designer によって新しく作成されるだけです。ここに 3 つの解決策があります。
1) UserControls を使用せず、これらの複数のビュー (eww) を実装する 1 つの巨大なフォームのみを使用します。
2) UserControls をフォームに挿入すると、デザイナーのサポートが失われます。
3) あなたの解決策! :)
dependency-injection - Ninject - いつ、どのように注入するか
私はDIとninjectに関しては初心者であり、実際の注入がいつ行われるべきか、バインディングを開始する方法について少し苦労しています。
私はすでに Web アプリケーションで使用しており、そこでは正常に動作していますが、今はクラス ライブラリでインジェクションを使用したいと考えています。
次のようなクラスがあるとします。
コンストラクターでファイル名を渡す必要があるため、ここではプロパティ インジェクションを使用します。コンストラクターパラメーターを渡す必要がある場合、コンストラクターインジェクションを使用できないというのは正しいですか? 追加のパラメーターでコンストラクター注入を使用できる場合、それらのパラメーターを渡すにはどうすればよいですか?
次のような Test クラスで消費するコンソール アプリがあります。
私の問題はtest.ImportData()
、リポジトリを null と呼んだときに、リポジトリに何も注入されていないことです。別のモジュールを作成して呼び出してみました
これですべての注入プロパティが解決されると思ったのTestClass
ですが、どこにも行きません。
これは些細な問題だと確信していますが、どうすればいいのかわかりません。
nhibernate - NinjectとSingleton
私のアプリケーションは、リクエストの実装ごとにセッションでNHibernateを使用します。現在のnhibernateセッションにアクセスするためのスレッドセーフなシングルトンを提供するコアライブラリがあります。
そのシングルトンは、BeginRequestイベントとEndRequestイベントでWebアプリケーションから活用され、各リクエストでセッションを確実に開始および終了します。さらに、私のDataAccessレイヤーは同じシングルトンを使用してデータアクセスを実行するため、同じnhibernateセッションが利用されます。
実行時にNHibernateのコンテキスト情報、つまり接続文字列を推測できるように、方程式にNinjectを追加しました。どのデータベースにアクセスするかを示すWeb構成の値を変更したいと思います。問題は、これを行うために、そのプロパティの1つであるIConnectionStringProviderを推測できるシングルトン(上記)が必要なことです。
正しく配線されていますが、シングルトンにインスタンス化されたプロパティがないため、すべてが壊れます。
それで、私の質問に対して... Ninjectをシングルトンで動作させるにはどうすればよいですか、またはNinjectで動作するように実装を変更するにはどうすればよいですか?
ninject - クラス ライブラリ プロジェクトの Ninject 2 構成サンプル
プロジェクトで Ninject 2.0 を使用し、クラス ライブラリの場合に構成する方法についての良いサンプルを探しています。多くのサンプルが WebForms と ASP.NET MVC で利用できますが、私の場合、DataAccess プロジェクトのリポジトリを Services プロジェクト (どちらもクラス ライブラリ) に挿入したいので、Web プロジェクトに何も挿入する必要はありません。
何か案が?
parameters - Ninject AOP - 傍受されたメソッドからメソッド パラメータを取得する
メソッドに送信された傍受されたパラメーターを取得する方法を知っている人はいますか?
例えば...
このような CustomerService 内に Update メソッドがあります.. Update(Customer c) ..そして、サービスに送信された Customer オブジェクトを取得したいとします。
それは箱から出てきますか、それとも「通常の」傍受以外に何かをしなければなりませんか。
/J
asp.net-mvc - ASP.NETMVC-Ninject2.0アクティベーションエラー
初めて依存性注入を使い始めたばかりで、ASP.NET MVC 2WebサイトのIoCコンテナーとしてNinject2.0として使用していますが、対応方法がわからないアクティベーションエラーが発生しています。簡単だと思いますので、あまり考えずに誰かが私を正しい方向に向けてくれることを願っています。
クラスBaseControllerに、IWebsiteSettingsを受け取り、[Inject]属性でフラグが付けられたプロパティがあります。StandardKernelで、次のコードを使用してモジュールをロードします。
これはかなり簡単です。web.configファイルからいくつかのデータをロードし、コントローラー全体で使用できるようにシングルトンオブジェクトに保存しようとしています。Bindの呼び出しは正常に機能しているようで、プロバイダーのSettingsプロパティは、構成ファイルのAppSettingsコレクションで正しく初期化されています。それでも、アプリケーションが最初にロードされるとき:
興味深いことに、ページを更新しても例外は発生せず、Kernel.Get()を呼び出すと正しいオブジェクトが返されます。
何かアドバイス?
c# - With.Parameters.ConstructorArgument with ninject 2.0
ninject 2.0でこの機能を使用するにはどうすればよいですか?
「With」はありません:(
asp.net-mvc - IAuthorizationFilter + Ninject2
現在、Ninject2 を使用して、MVC アプリのさまざまなサービスとリポジトリをバインドしています。その部分はうまく機能しているようです。ここで、独自のクラスを IAuthorizationFilter と属性セットを持つすべてのアクションにもバインドしたいと思います。
AuthorizationFilter を継承し、IAuthorizationFilter を実装するクラスを作成しました。
これもバインディング モジュールに追加しました。
前回確認したとき、Ninject Mvc ビットは 4 種類のアクション フィルターのバインドもサポートしていました。
他の誰かがこれをしましたか?サイトを実行するたびに、Authorize とマークされたアクションを呼び出す URL はログイン ページにリダイレクトされるだけで、フィルタ クラスのブレークポイントに到達することはありません。
カスタム属性を使用していた場合は機能しますが、すべての Authorize 属性を変更すると、もちろん、1 つを交換するたびに Ninject を使用する目的が無効になります。
dependency-injection - Container.GetAllInstancesと同等のものは何ですかNInjectで?
NInjectを使用してメッセージブローカーを構築しています。コンテナー内で、特定のメッセージタイプを消費できるものとしてクラスをマークするインターフェイスであるConsumesを実装するすべてのインスタンスを見つける必要があります。
このシナリオはサポートされていますか?
silverlight - ninject-contrib は Silverlight をサポートしていますか?
Prism で Silverlight アプリケーションを構築しており、NInject を使用したいと考えています。NInject ブートストラップを使用するために ninject-contrib をダウンロードしましたが、Silverlight アセンブリをビルドしていないようです。自分で Silverlight にコンパイルしましたが、Visual Studio がクラッシュします。
ninject-contrib を Silverlight に正常に移植した人はいますか?