问题标签 [dotconnect]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - TransactionScope 在 wcf 服务方法内不回滚,如果直接调用则回滚
我现在面临一个让我疯狂几天的问题,希望有人能帮助我。这里是 ;
我正在将 EF4 与 oracle 数据库一起使用,将 devart 的 dotConnect 用于 oracle 作为提供者。我有 wcf 服务方法,它在下面调用 DeleteCabinet 方法;
DBUtils.DeleteCabinetAndShelves 如下所示;
当我从我的测试项目中调用 DeleteCabinet 时,不是 wcf 调用而是直接方法调用,它工作正常。它抛出异常,事务被回滚。因此,没有按预期从数据库中删除记录
问题是,当我从客户端调用服务方法(调用 DeleteCabinet)时,抛出异常,但记录已从 db 中删除。交易不回滚!
似乎调用 wcf 方法不会回滚事务,但这似乎很疯狂(至少对我而言),有人知道这可能发生的原因吗?
提前致谢
c# - Oracle 期望日期的格式是什么?
使用以下 C# 代码(使用 devArt 的 dotConnect for Oracle 组件):
...我越来越:
Devart.Data.Oracle.OracleException 未处理消息 = ORA-06550:第 2 行,第 13 列:PLS-00306:调用“CONN_THRU_DOTNET”时参数的数量或类型错误 ORA-06550
参数是(从存储过程复制):
我认为这是导致问题的日期值。我在这里做错了什么?
c# - 不支持 Oracle 参数
我收到了这个错误消息:
System.ArgumentException 未处理 Message=Value 类型不支持 Devart.Data.Oracle.OracleParameter。
...使用此代码:
根据评论更新:
那么可以用什么代替 OracleParameter 来传递呢?
当我把它改成这个时(我只是像一只受惊的鸡一样四处乱窜):
...我也没有收到错误消息,但我也没有收到任何数据。
更新到更新:
好的,我终于让它工作了。这些可能不优雅,但它确实检索数据:
不过,现在:我怎样才能检索所有数据,而不是像我在上面所做的那样仅从一列中检索?最好的情况是将结果集定向到 DataGridView,但如果必须,我可以连接 (stringFormat()) 我想要的各种列,并以编程方式将它们添加到备忘录或类似的...
.net - 用于 Visual Studio 的 Oracle 组件是否可用于 WPF?
Oracle Data Provider for .NET (ODP.NET) 是否可用于 WPF,还是仅适用于 WinForms 的解决方案?
我将本机 Oracle 组件与 devArt dotConnect 进行比较,后者没有其组件的 WPF 版本...
c# - 为什么我的 DataGridview 拒绝刷新?
我正在更新表格中的一行。表的子集显示在 DataGridView 中。当我更新行时,更改不会反映在 DataGridView 中。即使我在提交更改后调用 DataGridView.Invalidate() 和 DataGridView.Refresh(),我也必须关闭应用程序、重新启动并重新运行查询,然后才能看到更改。
相关代码是:
更新:
根据霍尔的建议(我试图用评论回应,但它似乎被挂起):
好的,我现在有这个:
...并且它仍然可以正常工作 - 更新,但 DataGridView 直到我重新启动应用程序才知道它。
c# - 为什么我在尝试使用 DotConnect 组件检索结果集时会出错?
使用下面的代码,我在调用 ExecuteReader 时得到“ORA-01036:非法变量名称/编号”:
我想要做的是用查询结果填充一个列表。我在 DevArt 的文档(或谷歌搜索)中没有看到任何示例。我让它与 Oracle 的 ODP 组件一起使用:
...但找不到与 DotConnect 组件并行工作的方法。
更新:
好的,这是整个方法(ACurrentUserRoles 是一个字符串列表):
我得到的错误消息作为注释附加到它们出现的行中。
c# - 游标参数的声明真的与“常规”参数不同吗?
好的,似乎没有人知道如何解决我在循环游标/结果集以存储到列表中时遇到的问题,所以我将把它分解成碎片并尝试以这种方式通过它。所以,首先:
我以这种方式将 SQL 参数添加到 OracleCommand 对象(工作正常):
IOW,当我添加参数时,我传递了 SQL 的参数化部分的名称(上面的“ABCID”)和一个值(_ABCID 是一个已分配的变量,比如“42”)。
但是,当添加一个 Cursor(输出)参数时,它似乎想要的,不是一个值(例如初始化的游标对象),而只是数据类型:
(我两种方法都试过了,都不管用,所以...?)
确实/因此,我的问题是:这真的是声明要输出回用于遍历/访问的游标参数的正确方法吗?
我正在使用全新版本的 DevArt DotConnect 组件 (6.80.332)、VS 2010、.NET 4
更新:
这是更多上下文中的代码:
winforms - What is an icon file (.ico) that I can rely on every Windows user having?
I am extracting the icon from .exes, but want to have a fallback generic icon if for some reason Icon.ExtractAssociatedIcon(sPathOfExe) fails.
Is there one I can resort to like so that would be safer than what I'm currently using:
oracle - Devart dotConnect For Oracle 和 Enterprise Library 自定义提供程序映射
我正在尝试使用 Devart 的 dotConnect for Oracle 试用来获得一个简单的概念验证,因为我们目前使用 .Net 框架 OracleClient(由于不推荐使用),但我们还需要在不需要连接的情况下进行连接Oracle 客户端甚至即时客户端。出于这个原因,我试图向我的老板证明 dotConnect 是这项工作的工具,因为它的直接模式和与 Enterprise Library 5 一起工作的能力(用于我们的数据访问层)。我遵循了 Devart 提供的示例,包括在测试应用程序的 app.config 中添加自定义提供程序映射。这一切似乎在我的开发机器上都可以在 IDe 和已编译的应用程序中运行,所以我将它包装在一个简单的设置和部署项目中,
它只是不想工作。测试执行一个简单的选择语句并在列表视图中显示结果(如果有的话 - 如果没有,您会收到一条消息)。我实际上并不关心结果本身,而只是得到它们的行为。问题是当我执行测试时,我得到了无用的 EL 错误:
这是有问题的代码行:
这是 app.config 文件中的提供程序映射:
这是 app.config 中的连接字符串:
我知道这个错误可能是由于使用了错误的连接字符串名称(除其他外)引起的,但我知道这是正确的,因为我首先从配置文件中检索它。这也与开发环境中使用的配置完全相同。内部例外是这样的:
我怀疑提供程序映射是罪魁祸首,因为如果我将连接字符串中的提供程序更改为System.Data.OracleClient
then 它完全没有问题找到连接字符串,而是抱怨不支持的关键字Direct
(来自 dotConnect Direct 模式开关),这是有道理的。
我看不出我在提供者映射方面做错了什么。我以前没有使用过它,但我使用了 EL 配置工具来确保它的正确性,自定义库包含在可执行文件(和其他 EL 库)中。我看过几个例子,所有这些都表明我有正确的配置,那么我错过了什么?这让我发疯了。
c# - Oracle 期望日期值采用什么格式,我怎样才能为 Oracle 提供它想要的?
“AVAILABLEDATE”是 DATE 类型的列。
我可以通过 Toad 查询表格并获得结果。但是,在 (Winforms/C#/dotConnect) 代码中,它不起作用。
我很确定问题是我传递日期的方式:
...但我不知道如何强制日期值采用 Oracle 将识别的格式。