Dapper连接到Oracle异常密钥数据源的值的长度'超过它的限制' 128'

时间:2018-02-06 07:20:55

标签: c# oracle asp.net-web-api2 dapper

我想使用Dapper为我的WebApi建立链接。但我在下面得到了这个错误:

  

关键数据源的值长度'超过了' 128'

的限制

此错误的原因是这一行:

IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);

下面是我在Web.config中的连接字符串:

<connectionStrings>    
   <add name="DefaultConnection"
         connectionString="Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=myService)));User ID=userId;Password=password"
         providerName="System.Data.OracleClient"/>   
</connectionStrings>

我知道有一种方法可以通过使用Oracle.ManagedDataAccess解决这个问题,但我真的想尝试使用Dapper。有没有办法解决限制问题?

我已经看过这个解决方案The value's length for key 'data source' exceeds it's limit of '128'但是有没有涉及Oracle.ManagedDataAccess的简单方法?感谢

1 个答案:

答案 0 :(得分:0)

我已将SqlConnection更改为OracleConnection,它解决了这个问题。

using System.Data.OracleClient;
....

IDbConnection db = new OracleConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);