C# 这个实现可以类似于di注入吗?
我有这个代码,是不是依赖注入?我想通过接口从不同的来源获取数据C# 这个实现可以类似于di注入吗?,c#,C#,我有这个代码,是不是依赖注入?我想通过接口从不同的来源获取数据 namespace ConsoleApplication2 { class Program { static void Main(string[] args) { Data D = new Data(); AnotherApplication AS = new AnotherApplication(D); Console.ReadKey(); } }
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
Data D = new Data();
AnotherApplication AS = new AnotherApplication(D);
Console.ReadKey();
}
}
public interface IData
{
WebSocket WebSocket { get; }
}
public class Data:IData
{
public WebSocket WebSocket
{
get
{
var temp = new WebSocket("ws://127.0.0.1:2012");
temp.Open();
return temp;
}
}
}
public class AnotherApplication
{
public AnotherApplication(IData source)
{
source.WebSocket.MessageReceived += ProcessMessage;
}
public void ProcessMessage(object o,EventArgs e)
{
Console.WriteLine("Another happening");
}
}
}
是的,它看起来像一个方法注入。但接口有属性吗?为什么是方法?你的接口表示是什么并不重要。DI依赖于向构造函数、属性或方法注入抽象。您正在向方法注入
IData
。是的,它看起来像是方法注入。但是接口有属性吗?为什么是方法?你的接口表示是什么并不重要。DI依赖于向构造函数、属性或方法注入抽象。您正在向该方法注入IData
。