用简单的喷油器注册单一类



我如何注册没有接口的类,然后获得他的服务。Project在.NET 4.5 MVC中。我尝试第一次使用SimpleInjector,并在启动中进行方法配置。我的班级是:

  public class LawyersDB : DBFunction
{
    #region "MemberFields"
    Int16 _CommandTimeout;
    #endregion
    #region Constructors
    public LawyersDB()
    {
        _CommandTimeout = 300;
    }
    public LawyersDB(SQLDatabase conDatabase) :
        base(conDatabase)
    {
        _CommandTimeout = 300;
    }
    #endregion
    #region LIST

简单注射器不喜欢具有多个构造函数的类或服务。它认为他们是代码味的iirc。

您可以做类似的事情:

container.Register(() => new LawyersDb(container.GetInstance(typeof(SQLDatabase)), Lifestyle.Scoped);

您需要设置范围并获取要在类中使用的SQLDATABASE的实例。

最新更新