2

我有一个类,当前需要一个IIndex为了选择一个索引的依赖关系。我想以某种方式在构造函数参数上使用一个属性来改变它,以便直接指定要使用哪一个。Autofac构造函数注入属性

我很确定Autofac本身不支持这个,但我并不害怕为此写入自己的属性。我已经搞乱了Autofac的源代码(自定义注册源等),但我从来没有看到过裁剪注入方的方法。谁能帮忙?

P.S .:我见过this question,但它变成了关于基于属性的注入的好处的讨论。 OTOH,我已经决定我不想手动注册每一个依赖于这个特定依赖的类型,所以我更喜欢它。

+1

请问[本博客文章](http://blog.ploeh.dk/2013/01/09/MetadataRoleHint.aspx)能帮助您吗?如果不是,你可以添加一个小例子,说明'IIndex'当前如何使用,以及一些你想要它成为的伪代码? – wimh

+0

[我在之前的问题中发布了类似这样的内容。请试试。] [1] [1]:http://stackoverflow.com/a/14124961/540663 –

回答

2

您可以通过扫描解析接口上的类元数据来实现此目的。当你获得关于它的参数的信息时,你可以解析接口的实际实现。看到我的回答here