c# - mybatis .NET 可以直接和Oracle ODP.NET 客户端一起使用吗?

标签 c# .net ibatis odp.net mybatis

拥有一个现有的 C# .NET 代码库,该代码库当前编码为直接访问 Oracle 的 ODP.NET API 以进行数据库访问。我们有兴趣在应用程序的这个区域进行一些重构。

我们公司有另一个基于Java的代码库,其中myBATIS用于访问Oracle db。我们真的很喜欢那里的 myBATIS - 所以正在考虑将 myBATIS 用于 C# .NET 应用程序。

然而这里是“但是”:但是在查看 myBATIS for .NET 上的信息时,它似乎分层到 ADO.NET 上。

在处理 Oracle 数据库时,真的很想让 myBATIS 直接转到 ODP.NET。 (而且我们希望有使用非常特定版本的 ODP.NET 的自由度。)

这是否已经可行,或者我们是否需要卷起袖子编写我们自己的 myBATIS 分支,直接在 ODP.NET(而不是 ADO.NET)上分层?

我(还)不是 myBATIS 讨论组的成员,所以我先在这里提问。

最佳答案

providers section of your sqlMapConfig应该指向 providers.config使用类似于以下内容的提供商提交文件:

<provider 
    name="oracle10.1" 
    description="Oracle, oracle provider V10.1.0.301"
    enabled="true" 
    assemblyName="Oracle.DataAccess, Version=10.1.0.301, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.DataAccess.Client.OracleConnection" 
    commandClass="Oracle.DataAccess.Client.OracleCommand" 
    parameterClass="Oracle.DataAccess.Client.OracleParameter" 
    parameterDbTypeClass="Oracle.DataAccess.Client.OracleDbType" 
    parameterDbTypeProperty="OracleDbType" 
    dataAdapterClass="Oracle.DataAccess.Client.OracleDataAdapter" 
    commandBuilderClass="Oracle.DataAccess.Client.OracleCommandBuilder" 
    usePositionalParameters="true" 
    useParameterPrefixInSql="true"
    useParameterPrefixInParameter="true" 
    parameterPrefix=":" 
    useDeriveParameters="false"
    allowMARS="false"    
/>

关于c# - mybatis .NET 可以直接和Oracle ODP.NET 客户端一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8188108/

相关文章:

c# - 如何在 Windows Phone 中暂停秒表?

java - 在mybatis中传递数据库名称

sql - Ibatis 查询的参数化列第一次工作,第二次调用失败

c# - 温莎容器生活方式问题

c# - 如何为所有 stylecop 规则将操作设置为错误

c# - 更新语句通过 C# Winform 应用程序更新 0 行?

sql-server-2008 - 如何排除 BETWEEN sql server 中的上限

c# - System.Web.Helpers 命名空间在 WebMatrix 中不起作用

c# - 系统托盘中的 Winforms 通知图标重复

C# 引用对象时正确的图表是什么?