依存性注入を学習しようとしていますが、コードを実行すると 2 つのエラーが発生します。
DependencyInjection.Message.Sms()
本体はabstract、extern、またはpartialとマークされていないため、本体を宣言する必要があります。DependencyInjection.IInterface
タイプを に 暗黙的に変換することはできませんDependencyInjection.MyClass
。明示的な変換が存在します (キャストがありませんか?)
以下のコードは DI に適した設計ですか?
namespace DependencyInjection
{
public interface IInterface
{
}
public abstract class Message
{
public virtual void Sms();
}
public class MyClass : Message, IInterface
{
public override void Sms()
{
Console.WriteLine("Sms gönder.");
}
}
public class ClassManager
{
private IInterface _myinterface;
public MyClass Xyz
{
get { return _myinterface; }
set { _myinterface = value; }
}
public ClassManager(IInterface myinterface)
{
_myinterface = myinterface;
}
}
}