• Autofac.Configuration 3.3.0不稳定


    Autofac.Configuration程序集的作用:通过配置来实现依赖注入。

    示例:

    1.配置内容

    <configuration>
      <configSections>
        <section name="autofac" type="Autofac.Configuration.SectionHandler, Autofac.Configuration"/>
      </configSections>
      <autofac defaultAssembly="MyAutofac.Services">
        <components>
          <component type="MyAutofac.Services.SqlDatabase, MyAutofac.Services"
                     service="MyAutofac.Services.IDatabase"/>
        </components>
      </autofac>
    </configuration>

    2.代码调用

    [TestMethod]
            public void SelectThirdTest()
            {
                var builder = new ContainerBuilder();
                builder.RegisterModule(new ConfigurationSettingsReader("autofac"));
                ////通过Lampda表达式注册DatabaseManager实例
                builder.Register(c => new DatabaseManager(c.Resolve<IDatabase>()));
                string result = null;
                using (var container = builder.Build())
                {
                    var manager = container.Resolve<DatabaseManager>();
                    result = manager.Search("SELECT * FORM USER");
                }
                Assert.IsNotNull(result);
            }


    问题:

    在使用过程中,通过Nuget获取最新的稳定版本Autofac.Configuration3.3.0和Autofac3.5.2,却不能正常运行。

    过程描述如下:

    1.使用Autofac.Configuration 3.3.0时,参考https://www.nuget.org/packages/Autofac.Configuration/3.3.0中的说明,

    Dependencies[Autofac (≥ 3.3.1 && < 4.0.0)],因此使用最新的Autofac 3.5.2。编译通过,但实际运行时,会提示缺乏对Autofac 3.3.0的引用。
    2.将Autofac 3.5.2替换为Autofac 3.3.0,编译报错。

    3.将Autofac.Configuration 3.3.0替换为Autofac.Configuration 3.2.0,编译通过,运行通过。

    Demo下载 http://download.csdn.net/detail/heoo442/9134319

  • 相关阅读:
    OC之class与metaclass
    call vs apply
    ABI
    WEB服务器的四种类型
    情绪控制
    位置无关代码
    Finding Leaks Using Instruments
    Mac之TwoLevel Namespace
    Apache的几个特性
    Mac之debuging symbol
  • 原文地址:https://www.cnblogs.com/markhe/p/5588026.html
Copyright © 2020-2023  润新知