问题标签 [devart]

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.

0 投票
1 回答
5211 浏览

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.OracleClientthen 它完全没有问题找到连接字符串,而是抱怨不支持的关键字Direct(来自 dotConnect Direct 模式开关),这是有道理的。

我看不出我在提供者映射方面做错了什么。我以前没有使用过它,但我使用了 EL 配置工具来确保它的正确性,自定义库包含在可执行文件(和其他 EL 库)中。我看过几个例子,所有这些都表明我有正确的配置,那么我错过了什么?这让我发疯了。

0 投票
5 回答
115 浏览

c# - 一般在c#很多地方集成一行代码

好的,这是我的一段代码

由于我正在使用的新版本的 devart 连接器存在一些问题,我必须在代码中的OldCompatibility.BinaryAsString = true; 任何地方添加一行代码,如下所示

但问题是我必须在我的应用程序中进行此更改,其中有许多页面包含这段代码。所以有什么方法可以全局执行此操作,这样我就不必在我的应用程序中进行此更改。我正在使用 devart 连接器 6

0 投票
1 回答
157 浏览

sql-server-2008 - 如何导致超时

我们正在调查超时问题,并希望将其复制为初始测试的一部分。

我是 Devart、Borland C++ Builder 6 和 SQL Server 的新手,不确定所需的语法。我正在寻找示例代码来执行一个查询或一系列查询以生成无限期延迟,该延迟将超时。

0 投票
1 回答
2030 浏览

mysql - 无法仅使用代码连接到 mySql 数据库

我在这里搜索但没有看到答案。

我正在使用Delphi2010。我使用 Devart Mydac 连接到 mySql 数据库。当我设置服务器、数据库、名称、传递组件时,它连接没问题。

但是,当我尝试仅使用代码连接时,它会出错。

带有消息的异常类 EMySalExcption“#28000 用户'username@00.00.00.00'(使用密码:YES)'的访问被拒绝。

为什么code方法会报错?

感谢您的帮助和耐心。

0 投票
2 回答
1855 浏览

c# - 为什么语句会在 Toad 中执行,而不是在我的代码中?

这是我的代码:

在 Toad 中,此 SQL 工作正常——我只需在 Toad SQL 编辑器中将“:PLATYPUS”替换为值“Phineas”,并且确实更新了记录,因为“27 个记录受影响”消息和随后的 SQL 选择返回更新的记录显示。

但是在我的 C# 应用程序中,它挂在对 ExecuteNonQuery() 的调用上......我从来没有看到任何消息 - 更新失败也没有成功 - 它只是挂在那里,像蓝精灵球一样漂浮在太空中在月球上。

更新

我为 dotConnect for Oracle 复制了一些旧的更新代码,但它仍然做同样的事情(挂在对 ExecuteNonQuery() 的调用上

另一个更新

是否有可能 SQL 语句对于解析它的任何东西来说都太混乱了,即使它是有效的 SQL 也是如此?

同样,此查询在 Toad 中运行良好,但相当复杂:它包含两个嵌套的 Select 语句,如下所示:

另一个更新

如果我通过将子选择替换为参数(通过从那些 atmoic SQL 选择语句返回的结果提供)来简化查询,它会运行(并且几乎是即时的)。

所以,我猜嵌套的子选择对于解析更新语句的任何东西来说太多了......

0 投票
2 回答
4847 浏览

.net - 在实体框架中表示没有键的视图

我正在使用使用 Devart Entity Developer 生成的模型(.edml 文件,我理解它与 .edmx 最相似)来生成实体类,其关系在 DbContext 类中初始化。数据库架构没有为 View1 指定任何 PK,并且所有列都可以为空。但是代码生成假定对于缺少主键的视图,所有列都是键。即, .ssdl 具有 Key 元素下的所有列,并且 DbContext 具有在 all 上指定的 .IsRequired() ,如下所示:

ssdl摘录:

来自 DbContext:

这会导致 NullReferenceException,当查询将返回具有空值的 PK 列之一的行时。

有没有办法在 EF 中表示视图而不指定键或更改数据库架构?我发现了这个:http ://elegantcode.com/2012/03/15/querying-entityframework-views-without-a-key/

这是首选的解决方案吗?我想我也可以使用 DefiningQuery,但这似乎重复了用于生成视图的 sql?

0 投票
1 回答
787 浏览

asp.net-mvc-3 - 使用 MSDeploy 部署 DevArt 实体框架

场景第一:-

我正在使用 Entity Framework 进行一些查询,以构建我的模型我正在 MVC3 项目中尝试 DevArt Entity Developer。我构建应用程序上传到 SVN,然后持续集成服务器将其拾取(Bamboo)构建并使用 MSDeploy 部署。

但是由于某种原因,部署似乎存在问题,因为 MSDeploy 需要在部署文件之前提前了解文件,这意味着'.csdl', '.ssdl', or '.msl'文件没有部署到远程计算机上。

现在,如果我将 DevArt 从 EmbedInOutputAssembly 设置为 CopyToOutputDirectory,web.config 文件将更改表单

<add name="jcps01EntitiesConnectionString" connectionString="metadata=res://*/Models.jcps01.csdl|res://*/Models.jcps01.ssdl|res://*/Models.jcps01.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=XXXXX;Initial Catalog=jcps01;Integrated Security=False;Persist Security Info=True;User ID=XXXXX;Password=XXXXX&quot;"

<add name="jcps01EntitiesConnectionString" connectionString="metadata=~/bin/Models/jcps01.csdl|~/bin/Models/jcps01.ssdl|~/bin/Models/jcps01.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=XXXXX;Initial Catalog=jcps01;Integrated Security=False;Persist Security Info=True;User ID=XXXXX;Password=XXXXX&quot;" providerName="System.Data.EntityClient" />

然而,这有它自己的一系列问题,首先是应用程序没有创建模型文件夹,它只是创建文件/bin/Models.jcps01.msl,当然,由于文件不包含在项目/解决方案中,MSDeploy 没有部署它:|

有没有人在使用 MSDeploy 和 DevArt 之前取得过任何成功,如果是这样,您是否必须对文件的解决方案进行任何更改以复制到输出目录等?

0 投票
2 回答
768 浏览

c# - wf4 WorkflowApplication 中的持久性:SQL Server vs ORACLE DevArt

我们有一个 24x7 的应用程序来处理数十个 WF4 实例。

我们使用 SQL Instance Store 持久化 OnIdle 成功实现了持久化和恢复策略,在受控关闭中等待该状态并在恢复中加载回。

我们需要迁移到 ORACLE,并且我们使用了 DevArt Instance Store,但我们在使用相同的代码时遇到了一些问题。

到目前为止,我们仍在坚持 OnIdle,但现在我们必须在受控关闭时卸载,以便能够在恢复中加载。

当我们想到可能出现的“不那么温和”的关闭时,我们就会感到恐惧。

如果无法达到受控关闭方法,没有卸载的持久化实例怎么办?如何恢复它们?有人遇到过同样的情况吗?

0 投票
2 回答
2762 浏览

c# - 在 MSTest 代理上运行时缺少 Oracle oci.dll

我正在尝试在 MSTest 测试代理上运行一些与数据库相关的集成测试。我们使用 c# 和一个带有 devart dotconnect 的 oracle db。

由于我们需要使用间接模式,所以我在测试代理上安装了 devart 和一个 oracle 客户端。

当我在本地机器上执行测试时,测试运行顺利。但是当在测试代理(远程)上执行时,它找不到客户端的 oci.dll,这是某处的依赖项:

System.IO.FileNotFoundException:无法从家里加载 Oracle 客户端库 oci.dll ..

现在,我不知道为什么会这样。我已经检查了 PATH 环境变量,但它们看起来不错。任何想法为什么这在我的机器上有效,但在部署到测试代理时无效?

编辑:在 devart 中添加了堆栈跟踪:

0 投票
1 回答
193 浏览

c# - 如何拥有超过 1 个多对多关系

我的问题很简单,但我似乎无法让 EF 了解我的数据库架构(Oracle)。

问题

我想建模超过 1 MM 的关系见下图:

在此处输入图像描述

正如你所看到的,我有一本书和一本日记——我想通过使用链接表(联结表、交集表,你明白了!)来存储这两者的 URI。在这种情况下,我想针对 Journal 16 和 Book 75 存储它恰好是“www.google.com”,它们将以蓝色标记的以下格式存储在链接表中。为了完整起见,我为 ID 为 5 的链接添加了一个绿色示例。所以你可以看到数据是如何结合在一起的,我想你会同意这没什么太疯狂的。

无论如何,当我尝试更新 EF 模型时,它会抱怨(在 Visual Studio 中)出现类似的错误。

从第 210 行开始映射片段时出现问题:从表 REF_URI (REF_ID) 到表 JOURNALs (REF_ID) 的外键约束“REF_URI_JOURNAL_FK1”:表 REF_URI 的列映射到 AssociationSet BOOK_URISet 的 End BOOKs 但表 JOURNALs 的键列未映射到与此 End 对应的 EntitySet BOOKs 的键。

是的 - 没有真正得到那个错误信息!
我可以让 EF 处理 1 MM 关系,例如

在此处输入图像描述

这一切都有效,“hunky dory”,但是当我添加第二个 MM 关系时,它因上面的错误消息而崩溃,例如

在此处输入图像描述

任何人都知道我该如何解决这个问题?