Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法解析符号';企业图书馆集装箱&x27;_C#_Enterprise Library - Fatal编程技术网

C# 无法解析符号';企业图书馆集装箱&x27;

C# 无法解析符号';企业图书馆集装箱&x27;,c#,enterprise-library,C#,Enterprise Library,我刚刚开始试用新的MS Enterprise Library 6.0记录器块。当我尝试创建日志编写器时,会出现以下错误: 无法解析符号“EnterpriseLibraryContainer” 我已经准备好了所有的参考资料和用法,但无法克服这个错误 这个问题有解决办法吗?哈利路亚!我刚找到一篇帖子(在一个已经消失的链接上)。故事是这样的: 在Enterprise Library的版本6中,所有块的引导代码都已更改。这些块不再使用Unity来管理初始化和配置,每个块现在都包含自己的引导代码。任何调用

我刚刚开始试用新的MS Enterprise Library 6.0记录器块。当我尝试创建日志编写器时,会出现以下错误:

无法解析符号“EnterpriseLibraryContainer”

我已经准备好了所有的参考资料和用法,但无法克服这个错误


这个问题有解决办法吗?

哈利路亚!我刚找到一篇帖子(在一个已经消失的链接上)。故事是这样的:

在Enterprise Library的版本6中,所有块的引导代码都已更改。这些块不再使用Unity来管理初始化和配置,每个块现在都包含自己的引导代码。任何调用EnterpriseLibraryContainer.Current.GetInstance方法来解析某个企业库块中的类型的调用都应替换为特定于块的引导代码。例如,要基于app.config文件中的配置创建LogWriter实例,现在可以使用以下代码:

LogWriterFactory logWriterFactory = new LogWriterFactory();
var logWriter = logWriterFactory.Create();
private Validator<Customer> customerValidator;
customerValidator = ValidationFactory.CreateValidator<Customer>();
我相信这篇导语来自“Microsoft Enterprise Library 6和Unity 3迁移指南”


我已经输入了如图所示的代码,没有编译器抱怨。现在我可以继续了解日志记录是如何工作的。

是的,甚至我在使用Ent Lib 6.0为ValidationFactory创建对象时也遇到了问题。有关创建ValidationFactory实例的信息,请参阅以下代码:

LogWriterFactory logWriterFactory = new LogWriterFactory();
var logWriter = logWriterFactory.Create();
private Validator<Customer> customerValidator;
customerValidator = ValidationFactory.CreateValidator<Customer>();
专用验证程序customerValidator;
customerValidator=ValidationFactory.CreateValidator();
现在不需要这样做

EnterpriseLibraryContainer.Current.GetInstance<ValidatorFactory>()
EnterpriseLibraryContainer.Current.GetInstance()

太棒了!我不了解LogWriterFactory,为了使用EL6.0进行日志记录,我做了如下工作:var loggingConfig=ConfigurationManager.GetSection(“loggingConfiguration”)作为日志设置;var logWriter=loggingConfig.BuildLogWriter();