私はASP.NET C#で依存関係注入のためにUnityを使用しています。すべての素晴らしいUnityを使用して[Dependency]属性でインスタンスを挿入する方法は?
container.RegisterType<ISomething, Something>();
:依存関係のように構成されている
class MyClass
{
private readonly ISomething _something;
public MyClass(ISomething something)
{
_something = something;
}
public MyMethod()
{
// _something is instantiated as expected
}
}
:
通常、私は次のように、コンストラクタで依存関係を注入します。
しかし、今私はコンストラクタを使わずに注射をする必要があります。だから私は、この目的のために依存関係属性[Dependency]を使うことができると読んでいます。
class MyClass
{
[Dependency]
private ISomething _something { get; set; }
public MyMethod()
{
// _something appears to be null
}
}
しかし何らかの理由で_somethingがnullと思われます。
私には何が欠けていますか?
SOLUTION:私のために働いた
How to resolve dependency in static class with Unity?
:
注入されたインスタンスを生成するファクトリを作成する方法を示しており、ここではオーバー受け入れ答えを参照してください!
"しかし、今はコンストラクタを使わずに注入を行う必要があります。"なぜこれが必要ですか? – Steven