log4net.Appender.AdoNetAppender connectionType Oracle.ManagedDataAccess.Client

时间:2015-04-13 20:49:17

标签: 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" />

我想使用托管连接,但经过几个小时和谷歌搜索后,我找不到可行的连接类型。

App.Config:

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

输出到textWriterTraceListener包含:

  

log4net:错误[AdoNetAppender] ErrorCode:GenericFailure。失败   加载连接类型[Oracle.ManagedDataAccess.Client,   Oracle.ManagedDataAccess,Version = 4.121.1.0,Culture = neutral,   公钥= 89b483f429c47342]       System.TypeLoadException:无法从程序集中加载“Oracle.ManagedDataAccess.Client”类型   'Oracle.ManagedDataAccess,Version = 4.121.1.0,Culture = neutral,   公钥= 89b483f429c47342' 。

1 个答案:

答案 0 :(得分:12)

我认为App.Config必须是这样的:

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