Можно ли использовать mybatis .NET напрямую с клиентом Oracle ODP.NET?

Иметь существующую базу кода C # .NET, которая в настоящее время закодирована для прямого доступа к Oracle ODP.NET API для доступа к базе данных. Мы заинтересованы в некотором рефакторинге в этой области приложения.

У нашей компании есть еще одна база кода на основе Java, где myBATIS используется для доступа к Oracle db. Нам там очень нравится myBATIS - поэтому я рассматриваю myBATIS для приложения C # .NET.

Однако есть одно «но»: но, глядя на информацию о myBATIS для .NET, кажется, что она наложена на ADO.NET.

Очень хотелось бы, чтобы myBATIS переходил непосредственно в ODP.NET при работе с базой данных Oracle. (И мы хотели бы иметь возможность использовать очень специфическую версию ODP.NET.)

Возможно ли это уже сделать, или нам нужно будет засучить рукава и закодировать собственную ветку myBATIS, которая накладывается непосредственно на ODP.NET (вместо ADO.NET)?

Я (пока) не являюсь членом дискуссионных групп myBATIS, поэтому сначала прошу здесь.


person RogerV    schedule 18.11.2011    source источник


Ответы (2)


Раздел providers вашего sqlMapConfig должен указывать на _ 3 _ файл с поставщиком, похожим на:

<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"    
/>
person Chris Shouts    schedule 18.11.2011

Да, это возможно. Я делал это раньше против ODP.NET и клиента Microsoft Oracle, но не помню подробностей.

person Kit    schedule 18.11.2011