本文介绍了如何定义使用StructureMap由code默认构造函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我无法弄清楚如何定义默认构造函数由code(当它存在过载)在StructureMap(2.5版)的一种类型。
我希望得到一个服务的一个实例和容器必须注入LINQ2SQL数据上下文实例进去了。
我在引导程序的方法写的:
<$p$p><$c$c>ForRequestedType<MyDataContext>().TheDefault.Is.OfConcreteType<MyDataContext>();当我跑我的应用程序,我得到这个错误:
If I comment out all Linq2Sql generated contructors that I don't need, it works fine.
Update : Oh, and I forgot to say that I would not use the [StructureMap.DefaultConstructor]
attribute.
解决方案
You can specify a constructor with the ConstructedBy(). Please try this:
ForRequestedType<MyDataContext>().TheDefault.
Is.ConstructedBy(() => new MyDataContext());
This worked for me.
这篇关于如何定义使用StructureMap由code默认构造函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!