码迷,mamicode.com
首页 > Web开发 > 详细

Autofac json configuration

时间:2020-04-01 14:34:35      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:har   csharp   sharp   html   mod   divide   stat   file   The   

 static void Main(string[] args)
        {
            var config = new ConfigurationBuilder();
            config.AddJsonFile("autofac.json");
            // Register the ConfigurationModule with Autofac.
            var module = new ConfigurationModule(config.Build());
            var builder = new ContainerBuilder();
            builder.RegisterModule(module);
            var container = builder.Build();
            IOperation operation = container.Resolve<IOperation>();
            operation.Hello();

           
        }
{
  "defaultAssembly": "Autofac.Example.Calculator",
  "components": [
    {
      "type": "Autofac.Example.Calculator.Addition.Add, Autofac.Example.Calculator",
      "services": [
        {
          "type": "Auofac.Example.Calculator.Api.IOperation,Autofac.Example.Calculator"
        }
      ],
      "injectProperties": true
    },
    {
      "type": "Autofac.Example.Calculator.Division.Divide, Autofac.Example.Calculator",
      "services": [
        {
          "type": "Auofac.Example.Calculator.Api.IOperation,Autofac.Example.Calculator"
        }
      ],
      "parameters": {
        "places": 4
      }
    }
  ]
}
public class IOperation
   {
       public virtual void Hello()
       {
           Console.WriteLine("Hello");
       }
   }
 
 public class Divide : IOperation
   {
       public override void Hello()
       {
           Console.WriteLine("Hello,I‘m Divide");
       }
   }
 
public class Add : IOperation
   {
       public override void Hello()
       {
           Console.WriteLine("Hello,I‘m Add");
       }
   }
<?xml version="1.0" encoding="utf-8" ?>
<autofac defaultAssembly="Autofac.Example.Calculator">
    <components name="0">
        <type>Autofac.Example.Calculator.Addition.Add, Autofac.Example.Calculator.Addition</type>
        <services name="0" type="Autofac.Example.Calculator.Api.IOperation" />
        <injectProperties>true</injectProperties>
    </components>
    <components name="1">
        <type>Autofac.Example.Calculator.Division.Divide, Autofac.Example.Calculator.Division</type>
        <services name="0" type="Autofac.Example.Calculator.Api.IOperation" />
        <injectProperties>true</injectProperties>
        <parameters>
            <places>4</places>
        </parameters>
    </components>
</autofac>

  

  

  

  

  

Autofac json configuration

标签:har   csharp   sharp   html   mod   divide   stat   file   The   

原文地址:https://www.cnblogs.com/ms_senda/p/12612198.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!