2

我有一个 DLL,它是我们在许多不同项目中使用的日志记录组件。这个日志组件被设计成完全独立的,因此它必须有它的内部数据库连接字符串。在这个项目中,要求将其连接字符串复制到任何使用它的项目的 app.config 中是完全不能接受的。

多年来,这一直很好用,但现在我们发现,将其较旧的 ADO 技术与使用 EF 的新应用程序混合会导致在完成日志记录时性能非常糟糕。例如,在应用程序启动时添加单个日志条目会导致应用程序打开前延迟 > 30 秒。

所以为了解决这个问题,我重写了这个组件以使用 EF。

问题在于当前的 EF(版本 4.4,因为我们的目标是 .Net Framework 4.0)没有为 DBContext 提供允许您指定整个连接字符串的构造函数。代码尝试更改 Database.Connection.ConnectionString,但 DBContext 对象坚持在 App.Config 中查找连接字符串,即使我们给它一个新的。

我必须解决这种行为。

4

0 回答 0