是否可以将MS Enterprise Library的Logging块与SQL Server Compact Edition一起使用?
原因是我想要一个无忧无虑的应用程序安装,遗憾的是我不能要求用户安装SQL Server Express Edition。
另外,我想使用企业库,因为它似乎是最高质量的产品。 Log4Net不是一个选项,因为我根本不喜欢它(我测试的最后一个版本创建了疯狂的编译器警告......)。
答案 0 :(得分:1)
问题是包含DatabaseTraceListener的EntLib Logging应用程序块使用存储过程,但SQL Server CE不支持存储过程。 所以你必须编写自己的CustomTraceListener来支持它。
从此条目Logging Block 3.1 against SQL CE 4.0, possible?开始,EntLib对版本3.1的支持证实了这一点。 并且由于存储过程系统至少没有更改到版本5(我在EntLib 5源代码中检查了CreateLoggingDB sql脚本),我认为情况仍然如此。
答案 1 :(得分:0)
有关创建自定义tracelisteners的指导,请参阅Ext ensibility Hands-on Labs。有关灵感,请参阅EntLibContrib中的数据访问应用程序块扩展。