小编Yve*_*ves的帖子

StructureMap:'AddAllTypesOf'没有向ObjectFactory添加程序集?

我正在尝试构建一个控制台应用程序,它在运行时加载一个实现接口的程序集.关键是要创建一个带有指令的.dll,可以通过更改.dll来更改这些指令.

我的VS2012解决方案包含3个项目:界面,实现它的库和控制台应用程序.(因此,这三个都有自己的命名空间,也许这是一个问题?)库和控制台应用程序都引用了接口项目.

将组件添加到组件后ObjectFactory,在使用时找不到它们GetAllInstances.它们在使用时被发现AssembliesFromPath,但添加似乎不起作用.

这是我的代码:

var dir = "..\\..\\..\\ComputeLibrary\\bin\\Debug";
ObjectFactory.Initialize(cfg =>
{
    cfg.Scan(scanner =>
    {
        scanner.AssembliesFromPath(dir);
        scanner.AddAllTypesOf(typeof(ICompute)).NameBy(i => i.Name);
    });
});
var list = ObjectFactory.GetAllInstances<ICompute>().ToList();
list.ForEach(item => item.Test());
Run Code Online (Sandbox Code Playgroud)

如果有人想查看整个解决方案,可在此处获取.

我可能在这里做错了,但我似乎无法找到它是什么.这是应该如何使用的?或者我应该看看MEF做这样的事情?

c# structuremap .net-assembly

5
推荐指数
1
解决办法
1605
查看次数

标签 统计

.net-assembly ×1

c# ×1

structuremap ×1