1
请:如果我的问题是不明确的,请告诉我,我会尝试重组它如何配置ObjectFactory的调用参数的构造函数structuremap
- 我需要[默认构造函数在LogOnModel,所以不能被删除。
- LoadModel + ModelFactory和LogOnModel物理上位于不同项目中的不同文件中,而project2具有对project1的引用,反之亦然。
1 - 让说 类型= typeof运算(LogOnModel)。当ObjectFactory.GetInstance(T)叫我想它来调用 参数构造LogOnModel和它传递@params
2 - 如果我将添加到参数构造LogOnModel另一参数,例如
public LogOnModel(string param, IPageService pageService)
所以ObjectFacytory应该调用此构造方法没有任何问题
如何配置/启动的ObjectFactory,所以这会起作用吗?
谢谢
EDITED
//Project1/file1.cs
public void LoadModel(Type type, string param)
{
var factory = new ModelFactory();
var model = factory.Get(type, **param**);
}
public class ModelFactory : IModelFactory
{
public PageModel Get(Type t, **string param**)
{
//NOW I NEED SOMEHOW TO PASS **param** TO EVERY INSTANCE THAT INHERITS FROM **PageModel**
return ObjectFactory.GetInstance(t) as PageModel;
}
}
//Project2/file2.cs
public class LogOnModel : PageModel
{
public LogOnModel()
{
}
public LogOnModel(string param)
{
}
}
public class Model2 : PageModel
{
public LogOnModel()
{
}
public LogOnModel(string param)
{
}
}
public class Model3 : PageModel
{
public LogOnModel()
{
}
public LogOnModel(string param)
{
}
}
但“参数”是动态的。 LoadModel获取“param”,我需要将它传递给ModelFactory.Get,因此当它创建实例时,它会将“param”传递给创建的实例。 – theateist 2011-02-15 19:53:57