我有一个类ScreenParameter(实现IScreenParameter),它以windows形式存储所有表单值。当用户填充所有字段并单击按钮时,将启动此类。 Bussiness Layer中的类在其构造函数中等待IScreenParameter。我使用Structure map注入接口,需要在其上下文中创建它。我有一个创建和填充接口的方法(GetScreenParameters)。我想在配置Structure map时给出方法名而不是concreate类,并尝试了这个。
ObjectFactory.Initialize(initialize =>
{
initialize.For<IScreenParameter>().Use(GetScreenParameters);
});
但它不起作用。你能帮忙解决一下这个问题吗?
答案 0 :(得分:0)
假设从包含Form
方法的GetScreenParameters
类的实例调用代码,您可以使用以下语法:
initialize.For<IScreenParameter>().Use(() => GetScreenParameters());
这将导致每次要获取IScreenParameter
的实例时都会调用GetScreenParameters方法。如果您希望每次都能使用相同的实例将其注册为单身:
initialize.For<IScreenParameter>().Use(GetScreenParameters());