oracle - log4net.Appender.AdoNetAppender 连接类型 Oracle.ManagedDataAccess.Client

标签 oracle log4net

我正在尝试将 .NET 4.5 Windows 服务从非托管切换到 Oracle.ManagedDataAccess.dll ODP.NET 4.121.1.0。该应用程序本身运行良好。切换到 ODP.NET 4.121.2.0 没有帮助。

多年来我一直将 log4net 保存到数据库表中,并在 AdoNetAppender 中设置连接类型:

<connectionType value="Oracle.DataAccess.Client.OracleConnection, 
    Oracle.DataAccess, Version=2.112.1.2, Culture=neutral, 
    PublicKeyToken=89B483F429C47342" />

我想使用托管连接,但经过几个小时和 Google 搜索后,我找不到有效的连接类型。

应用程序配置:

connectionType value="Oracle.ManagedDataAccess.Client, 
         Oracle.ManagedDataAccess, Version=4.121.1.0, 
         Culture=neutral, PublicKeyToken=89b483f429c47342"

textWriterTraceListener 的输出包含:

log4net:ERROR [AdoNetAppender] ErrorCode: GenericFailure. Failed to load connection type [Oracle.ManagedDataAccess.Client, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342] System.TypeLoadException: Could not load type 'Oracle.ManagedDataAccess.Client' from assembly 'Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342'.

最佳答案

我认为App.Config一定是这样的:

connectionType value="Oracle.ManagedDataAccess.Client.OracleConnection, 
         Oracle.ManagedDataAccess, Version=4.121.1.0, 
         Culture=neutral, PublicKeyToken=89b483f429c47342"

关于oracle - log4net.Appender.AdoNetAppender 连接类型 Oracle.ManagedDataAccess.Client,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29614827/

相关文章:

oracle - 如何在oracle 11g中查找特定表空间中的用户?

oracle - 设置oracle的连续问题

java - 由于 Java SimpleDateFormat 问题,在 Oracle DB 中保存时间数据(带区域)无法正常工作

c# - log4net在运行时删除文件是否可能c#

c# - 按大小滚动时将日期附加到文件名

unity-game-engine - 当 Unity 应用程序安装并在另一个系统中运行时,不会创建 Log4net 日志文件

c# - 如何在同一个解决方案中使用 2 个不同的 log4net 程序集——每个程序集都针对不同版本的 .Net Framework?

java - 无法使用 JDBCTemplate 插入扩展 VARCHAR2

c# - Log4net 生成错误的日志文件名

Oracle AQ 相同的消息被传递两次