带有 Sybase ASE 15.5 的 LINQToEntities
Posted
技术标签:
【中文标题】带有 Sybase ASE 15.5 的 LINQToEntities【英文标题】:LINQToEntities with Sybase ASE 15.5 【发布时间】:2011-10-06 18:04:52 【问题描述】:在过去的几天里,我一直在尝试使用实体框架和 LINQ 2 实体,它们在 SQL Server 上工作得非常好(正如我所期望的那样),但问题是我必须使用 Sybase ASE 15.5。
我说“问题”是因为以下原因:
-
生成/更新模型通常需要很长时间
有时它会生成一个错误,指出字段
我使用的是 Sybase SDK 版本 15.5.0.1000,此 SDK 中的 ADO.NET 提供程序是否运行良好(例如,我做错了什么)?如果没有,是否有更新的?我还需要安装其他什么东西来解决这些问题(比如更新的 SDK、一些 dll 或一些用于翻译的方言)? (我知道有一个新的 Sybase ASE -15.7- 但它是否带有一个新的 SDK?可能并不重要,因为我不确定 IT 总监和 CIO 现在是否会批准更改)
我也尝试过 Data Direct 提供程序,但它在尝试生成模型时卡住了,BLToolkit 也是,从我在他们的网站上阅读的内容来看,依赖于供应商数据提供程序(至少对于非 Microsoft DB) .我真的很喜欢与 Entity Framework 一起工作的东西,但现在只需要与 ASE 和 ASE CE 一起工作的东西(还没有尝试过 NHibernate,主要是因为乍一看它似乎涉及太多的手动工作,并且阅读ASE 有一些问题)
提前感谢您提供的任何帮助。
【问题讨论】:
【参考方案1】:一整周都没有评论,我自己来回答。
看来SDK确实有问题,显然模型生成创建了一个执行的T-SQL怪物,因此延迟很大。它确实存在一些类似命名但仅在 ASE 中的约束问题,在 ASE CE 中它似乎没有任何问题。我找不到任何资源,比如 ASE 特有的方言,所以我猜他们的驱动程序还没有准备好与 Entity Framework 一起使用,因为生成的 T-SQL 是针对 SQL Server 的,在某些查询中会抛出 ASE 异常。
我可能会选择 NHibernate,因为它似乎是最有益的一条途径(因为它确实有效)而且它是免费的。此外,似乎 Progress (DataDirect) 人员在试用期间确实为他们的 ADO.NET 提供程序提供了支持,我会打电话给他们,看看问题是否可以轻松解决,在这种情况下,我可能最终会使用它.
更新:显然这个问题已经得到修复,因为现在我可以使用 Sybase 驱动程序创建模型了。
【讨论】:
以上是关于带有 Sybase ASE 15.5 的 LINQToEntities的主要内容,如果未能解决你的问题,请参考以下文章