2011-06-17 110 views
2

我想配置温莎城堡温莎depency注射参数构造函数

我有一个IFileReader接口通过的FileReader实现,具有的FileReader在构造函数中

如何设置该属性字符串属性当我试图用ServiceLocator获取FileReader的实例?

Container.Register(Component.For<IFileReader>().ImplementedBy<FileReader>()); 

public class FileReader 
{ 
public FileReader(string fileName) 
. 
. 
. 

ServiceLocator.Current.GetInstance<IFileReader>(); <- how pass filename?? 
+1

最好的选择:不使用容器作为服务全部定位器:http://blog.ploeh.dk/2010/02/03/ServiceLocatorIsAnAntiPattern.aspx – 2011-06-18 15:31:27

回答

1

This link应该对你有帮助。

简而言之,您可以使用DependsOnServiceOverrides,ParametersDynamicParameters。选择最适合你的那个。