【发布时间】:2011-01-09 02:52:25
【问题描述】:
【问题讨论】:
-
搞笑,书名和我的书名一样。也许网络搜索可以帮助您...
标签: c# .net dependency-injection
【问题讨论】:
标签: c# .net dependency-injection
依赖注入是一个非常简单的概念(另一方面,实现可能相当复杂)。
依赖注入只是允许方法的调用者在调用时将依赖对象注入方法中。例如,如果您希望允许以下代码在不重新编译方法的情况下交换 SQL 提供程序:
public void DoSomething()
{
using(SQLConnection conn = new SQLConnection())
{
// Do some work.
}
}
您可以“注入” SQL 提供程序:
public void DoSomething(ISQLProvider provider)
{
// Do the work with provider
}
还有构造函数注入,您可以在实例化期间注入对象的依赖项。
public class SomeObject
{
private ISQLProvider _provider;
public SomeObject(ISQLProvider provider)
{
_provider = provider;
}
}
依赖注入的全部意义在于减少应用程序各部分之间的耦合。调用者可以替换完成工作所需的任何内容,而无需修改它正在调用的方法(或它正在创建的对象)。
【讨论】: