Sybase ASE 15.5的LINQToEntities

时间:2011-10-06 18:04:53

标签: .net orm sybase-ase

在过去的几天里,我一直在尝试使用实体框架和LINQ 2实体,它们与SQL Server完美配合(正如我所料),但问题是我必须使用Sybase ASE 15.5。

由于以下原因,我说“问题”:

  1. 生成/更新模型通常需要很长时间
  2. 有时会产生错误,说明字段< fieldname>已经在元数据集合中(我认为它与命名约束或字段名称有关,在具有关系的表中是相同的(FK是最常见的)
  3. 我做了一个简单的模型,其中生成/更新没有问题,但问题是有时(取决于查询)LINQ To Entities生成的T-SQL在ASE中引发一些错误
  4. 我使用的是Sybase SDK 15.5.0.1000版本,此SDK中的ADO.NET Provider是否运行良好(如果我做错了什么)?如果没有,是否有更新的?有什么其他的东西我必须安装来解决这些问题(如较新的SDK,一些dll或一些方言的翻译)? (我知道有一个新的Sybase ASE -15.7-但它是否带有一个新的SDK?并且可能并不重要,因为我不确定IT Director和CIO现在是否会批准进行更改)

    我也尝试过数据直接提供程序但是在尝试生成模型时遇到困难,BLToolkit也是我在他们网站上读到的,依赖于供应商数据提供者(至少对于非Microsoft DB) 。我真的想要一些适用于Entity Framework的东西,但只是适用于ASE和ASE CE的东西在这一点上会做的(还没有尝试过NHibernate,主要是因为乍一看它似乎涉及太多的手工工作,并且阅读在某处它有一些ASE问题

    提前感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

由于已经整整一个星期甚至没有发表评论,我自己会回答这个问题。

似乎SDK确实存在问题,显然模型生成会创建一个被执行的T-SQL怪物,因此是一个很大的延迟。它确实存在一些问题,这些约束命名相似但仅在ASE中,在ASE CE中它似乎没有任何问题。我找不到任何特定于ASE的方言资源,所以我猜他们的驱动程序还没有准备好与Entity Framework一起使用,因为生成的T-SQL用于SQL Server,在某些查询中会抛出ASE的异常。

我可能会选择NHibernate,因为它似乎是最有益的一条路径(因为它实际上是有效的)并且它是免费的。此外,似乎Progress(DataDirect)人员在试用期间为他们的ADO.NET提供商提供支持,我会打电话给他们,看看问题是否可以轻松解决,在这种情况下,我可能最终会使用它

更新:显然这已经修复,因为我现在可以使用Sybase驱动程序创建模型。

相关问题