(5) 引入Autofac并将接口注册实现类

首先引入Autofac库,

cmd下运行

dotnet add package Autofac

成功后,在项目文件 MyWebApp.csproj 中可以看到增加了

<PackageReference Include="Autofac" Version="6.3.0" />

增加一个类:

code\db\AutofacConfig.cs

using Autofac;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using core_admin.i;
using core_admin.d;

namespace core_admin.db
{


    public class AutofacConfig
    {
        public static IContainer Container { get; set; }

        public AutofacConfig() { }

        public static void Register()
        {
            var builder = new ContainerBuilder();
            //注册

            builder.RegisterType<Dao_Blog>().As<IBlog>().InstancePerLifetimeScope();

                      

            Container = builder.Build();

        }


    }


}

这里将接口 IBlog 和 实现类 Dao_Blog 绑定。

在程序启动的时候执行,即在 Program.cs 中增加一行

AutofacConfig.Register();

现在的 Program.cs 

using core_admin.utils;
using core_admin.db;

Global_Values.connStr = WebHelper.get_item("connStr");
AutofacConfig.Register();


var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddControllersWithViews();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

app.Run();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ying1979

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值