Autofac注册所有类型为IFoo,命名为IFoo.Name。
创始人
2024-11-12 12:30:30
0次

以下是使用Autofac注册所有类型为IFoo并命名为IFoo.Name的代码示例:

using Autofac;

public interface IFoo
{
    string Name { get; }
}

public class Foo1 : IFoo
{
    public string Name => "Foo1";
}

public class Foo2 : IFoo
{
    public string Name => "Foo2";
}

public class Foo3 : IFoo
{
    public string Name => "Foo3";
}

public class Program
{
    public static void Main(string[] args)
    {
        var builder = new ContainerBuilder();

        // 注册所有实现了IFoo接口的类型,并以IFoo.Name命名
        builder.RegisterAssemblyTypes(typeof(Program).Assembly)
            .Where(t => t.GetInterfaces().Contains(typeof(IFoo)))
            .Named(t => ((IFoo)t).Name);

        var container = builder.Build();

        // 解析并输出所有以IFoo.Name命名的实例
        var foo1 = container.ResolveNamed("Foo1");
        var foo2 = container.ResolveNamed("Foo2");
        var foo3 = container.ResolveNamed("Foo3");

        Console.WriteLine(foo1.Name);
        Console.WriteLine(foo2.Name);
        Console.WriteLine(foo3.Name);
    }
}

在这个示例中,我们首先定义了一个IFoo接口,包含一个Name属性。然后我们实现了三个IFoo接口的具体类Foo1、Foo2和Foo3,每个类的Name属性返回不同的值。

接下来,在Program类中,我们使用Autofac的ContainerBuilder来构建一个容器。使用RegisterAssemblyTypes方法来注册程序集中实现了IFoo接口的所有类型,并使用Named方法以IFoo.Name作为命名。

最后,我们通过容器的ResolveNamed方法来解析以IFoo.Name命名的实例,并输出它们的Name属性值。

输出结果将会是:

Foo1
Foo2
Foo3

相关内容

热门资讯

揭秘一下透视挂!十三张游戏ai... 揭秘一下透视挂!十三张游戏ai智能透视挂app,十三张游戏开挂技巧攻略(切实有挂技术)运十三张游戏辅...
受玩家影响辅助挂!超圣大厅ai... 受玩家影响辅助挂!超圣大厅ai智能辅助挂插件,超圣大厅有挂吗指南(总是有挂猫腻)1、下载好超圣大厅透...
据相关数据显示透视挂!八爪互娱... 据相关数据显示透视挂!八爪互娱ai智能透视挂脚本,八爪互娱透视方法烘培(好像有挂猫腻)在进入八爪互娱...
必备教程开挂!番茄互娱ai智能... 必备教程开挂!番茄互娱ai智能开挂脚本,番茄互娱透视方法妙计(一贯有挂技术)小薇(辅助器软件下载)致...
此事引发网友热议辅助器!如意大... 此事引发网友热议辅助器!如意大厅ai智能辅助器插件,如意大厅透视挂软件方案(真是有挂详情)1)如意大...
必备科技辅助器!新漫游大厅ai... 必备科技辅助器!新漫游大厅ai智能辅助器脚本,新漫游大厅怎么开挂讲义(果然有挂技术)1、全新机制【新...
于此同时透视!海商互娱ai智能... 于此同时透视!海商互娱ai智能透视技巧,海商互娱透视挂件法门(一贯有挂猫腻)1、玩家可以在海商互娱线...
重大通报透视挂!新二号ai智能... 重大通报透视挂!新二号ai智能透视挂攻略,新二号开挂脚本总结(竟然发现有挂);1、每一步都需要思考,...
据目击者称辅助器!生肖牛ai智... 据目击者称辅助器!生肖牛ai智能辅助器软件,生肖牛真的有挂指南书(本来有挂教学)1、生肖牛模拟器是什...
重大通报开挂!新云游大厅ai智... 重大通报开挂!新云游大厅ai智能开挂app,新云游大厅透视辅助指引(好像发现有挂)新云游大厅透视方法...