相关疑难解决方法(0)

您可以在Oracle中使用Microsoft Entity Framework吗?

是否可以将Microsoft Entity Framework与Oracle数据库一起使用?

.net oracle entity-framework odp.net

93
推荐指数
4
解决办法
10万
查看次数

使用ODP.NET按名称绑定查询参数

我目前正在使用Oracle(System.Data.OracleClient)的Microsoft ADO.NET提供程序.我知道它肯定不是最好的Oracle提供商,它很快就会被弃用,我应该使用Oracle的ODP.NET.我仍然使用MS提供程序的原因是因为ODP.NET按位置绑定参数,而不是按名称绑定.当您在查询中使用许多参数时,这实际上可能是PITA,因为您必须小心以正确的顺序添加它们,这很容易导致错误.在同一查询中多次使用相同参数时也很烦人,例如:

SELECT A,B,C FROM FOO WHERE X = :PARAM_X OR :PARAM_X = 0
Run Code Online (Sandbox Code Playgroud)

使用ODP.NET,我必须添加两个参数OracleCommand,我认为这是愚蠢的......

ODP.NET OracleCommand有一个属性来改变默认行为:BindByName.设置为true时,参数按名称绑定,这就是我想要的.不幸的是,这对我没有帮助,因为:

  • 默认设置为false
  • 我几乎从来不使用混凝土ADO.NET类明确,我更喜欢使用ADO.NET 2.0抽象层(DbProviderFactory,DbConnection,DbCommand...),以减少连接到任何特定的RDBMS.所以我没有访问该BindByName属性,除非我明确地转换OracleCommand,失去所有的好处或抽象.
  • 当使用ASP.NET SqlDataSource时,我自己不创建DbCommand,所以我没有机会设置BindByName为true(我可以在Selecting事件中做到这一点,但是对于每个事件来说真的很难SqlDataSource的...)

我该如何处理这个问题?BindByNameByDefault某处有设置吗?(我没有找到类似的东西,但我可能错过了......)

c# oracle ado.net odp.net

17
推荐指数
1
解决办法
2万
查看次数

System.Data.OracleClient命名空间已停止?

我今天刚刚阅读了这篇文章,关于Microsoft如何决定System.Data.OrcaleClient从.NET 4.0库中删除命名空间.

我使用它作为我使用Oracle数据库的主要工具.

当我决定将我的应用程序从.NET 2.0升级到.NET 4.0时,在.NET 4.0框架中使用Oracle数据库会有哪些替代选项?

oracle oracleclient .net-4.0

14
推荐指数
1
解决办法
2万
查看次数

ODP.NET和ClickOnce可能吗?

我们有一个与ClickOnce一起部署的sqlserver(WinForms)应用程序,它直接与数据库通信.如果我们被迫将它移植到oracle,ODP.NET可以与ClickOnce一起使用.

(用户可能没有PC上的管理员权限)

背景

此数据导入应用程序由每个客户站点上的少数用户使用,它使用集成登录连接到SQL Server.大多数用户访问系统var一个Asp.net应用程序,或一个与Web服务对话的WinForms(clickOnce)应用程序.

另请参阅" 如何编写适用于SqlServer和Oracle的.Net应用程序 "

.net clickonce ado.net odp.net

6
推荐指数
1
解决办法
5414
查看次数