Moh*_*yan 1 .net c# dependency-injection
可能重复:
帮助.NET中的依赖注入
嗨朋友们,
我在一些网站上看到了依赖注入的几天!
你能说:
它是什么 ?
使用它有什么好处?
非常感谢.
依赖注入是一个非常简单的概念(另一方面,实现可能非常复杂).
依赖注入只是允许方法的调用者在调用方法时将依赖对象注入方法.例如,如果您希望允许以下代码交换SQL提供程序而不重新编译该方法:
public void DoSomething()
{
using(SQLConnection conn = new SQLConnection())
{
// Do some work.
}
}
Run Code Online (Sandbox Code Playgroud)
你可以'注入'SQL提供者:
public void DoSomething(ISQLProvider provider)
{
// Do the work with provider
}
Run Code Online (Sandbox Code Playgroud)
还有构造函数注入,您可以在实例化期间注入对象的依赖项.
public class SomeObject
{
private ISQLProvider _provider;
public SomeObject(ISQLProvider provider)
{
_provider = provider;
}
}
Run Code Online (Sandbox Code Playgroud)
依赖注入的重点是减少应用程序各部分之间的耦合.调用者可以替换完成任务所需的任何内容,而无需修改它调用的方法(或者它正在创建的对象).