拥有一个现有的 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"     
/> 


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!