首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DBLinq未生成where子句

DBLinq未生成where子句
EN

Stack Overflow用户
提问于 2009-04-17 14:42:07
回答 2查看 878关注 0票数 3

我正在使用MySQL和Postgresql测试来自SVN Trunk的DBLinq-0.18和DBLinq。我只使用了一个非常简单的查询,但是在这两个数据库上,DBLinq都没有生成Where子句。我已经通过在Postgresql上打开语句日志来确认这一点,以检查DBLinq到底发送了什么请求。

我的Linq查询是:

代码语言:javascript
复制
MyDB db = new MyDB(new NpgsqlConnection("Database=database;Host=localhost;User Id=postgres;Password=password"));

var customers = from customer in db.Customers
                where customer.CustomerUserName == "test"
                select customer;

查询运行正常,但DBLinq生成的SQL格式如下:

代码语言:javascript
复制
select customerusername, customerpassword .... from public.customers

没有Where子句,这意味着DBLinq必须在运行Linq查询之前拉下整个表。

有没有人有过使用DBLinq的经验,知道我可能做错了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-04-19 15:45:56

我发现了问题,但这与DBLinq无关。

我一直在测试IronRuby中的一些东西,其中有一个名为Microsoft.Scripting.Core的程序集,它复制了System.Data.Linq命名空间(为什么它会这样,我不知道)。

使用对Microsoft.Scripting.Core程序集的引用,我的测试DBLinq应用程序可以很好地编译和运行,但在SQL上会缺少where子句。删除程序集引用导致正确生成where子句。

票数 1
EN

Stack Overflow用户

发布于 2009-11-05 21:59:48

我会避免在产品代码中使用DBLinq ...Linq-To-SQL的许多特性都没有实现,浏览一下源代码就会发现成熟度很低……许多方法都没有实现或标记为“未终止”。

你已经被警告过了!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/760665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档