开发者

How do you generate SQL using LINQ?

I want to be able to take a LINQ statement like this.

var User = from u in User开发者_开发问答s
           where u.UserID == 7
           select u.UserName;

And have it generate SQL like this.

SELECT UserName FROM Users WHERE Users.UserID = 7

I know LINQ TO SQL does this but I don't want all that added xml mapping and generated code. Obviously this is possible since LINQ TO SQL does it but how does it do it?

Update

Other reason why I don't want to use LINQ to SQL is because I want to use it for PostgreSQL.


So, you should download LinqPad:

http://www.linqpad.net/

This will give you some nice information about what LINQ is doing.


You probably want one of the approaches suggested here- http://www.thereforesystems.com/view-query-generate-by-linq-to-sql/

But you could consider instead using Entity Framework with Postgres SQL http://www.devart.com/dotconnect/postgresql/


Right now there doesn't seem to be an open source production ready LINQ to PostgreSQL library. So since this is a new project I'm going to use MongoDB with MongoDB-CSharp as my LINQ driver. It does everything I need it too with the added benefit of not having to worry about schemas and stored procedures.


Try to use Devart LinqConnect - http://www.devart.com/linqconnect/. It supports PostgreSQL and allows you to define flexible templates for sql generation.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜