私は静的Loggerクラスを呼び出す静的クラスを持って、静的ロガーと依存性注入、静的ヘルパークラス
例えば、私は私の静的クラスにロガーを注入するにはどうすればよい
static class DoesStuffStatic
{
public static void DoStuff()
{
try
{
//something
}
catch(Exception e)
{
//do stuff;
Logger.Log(e);
}
}
}
static class Logger
{
public static void Log(Exception e)
{
//do stuff here
}
}
?
注:私はDependency Injection in .NET with examples?を読みましたが、これはインスタンスロガーを使用しているようです。
依存性の解決よりも依存性の解決策に似ています。静的クラスは現在、依存関係フレームワークの知識を持っています。しかし、それを避けるためにそれを適応させることは難しくありません。 (application_startで解決し、初期化でリゾルバを提供するのではなく、解決された依存関係で初期化してください。) –
質問は、静的クラスを静的クラスに注入することです。ここでは、非静的インスタンスを静的クラスに挿入する方法について説明します。 これは前の回答の次のステートメントに対する応答のようです: "静的なクラスに何かを注入するのはかなり難しい" –
これはロガーのような単純なものでは非常に複雑です。 – rolls