Questions on DLinq

  • Thread starter Thread starter Lei Jiang
  • Start date Start date
L

Lei Jiang

1) Is it support other database other than SQL Server, such as Oracle,
Sybase?

2) How about the performance? Does it relay on reflections to bind the value
from databse to Entity object?

Thanks!
 
Lei said:
1) Is it support other database other than SQL Server, such as
Oracle, Sybase?

To be discussed, I can't comment on that.
2) How about the performance? Does it relay on reflections to bind
the value from databse to Entity object?

It's my understanding the compiler (C# 3.0 compiler) generates code
which utilizes the attributes of the referenced assembly in the
project, and therefore does the reflection of the attributes at compile
time, rather than at runtime.

FB

--
 
Hi Lei,
From my understand of it the query expressions are compiled (or more
correctly: translated) into plain old SQL. I don't know the variant of
SQL output but since none of the big vendor implement SQL92 or SQL99 it
doesn't really matter. But in DLinq is not for SQLServer only.

Actually I'd say that it would work really well on MySQL since the Open
Source boys love their standards compliance.

Hope that helps,
Jan
 
I am currently working on an Oracle database and I want to try DLinq. I am
wondering if it could work.
 
Are you sure it does not use Reflection at runtime? I have tried some O/R
mapping library (such as NHibernate) and found that the reflection wastes a
lot of time.
 
Lei said:
Are you sure it does not use Reflection at runtime? I have tried some
O/R mapping library (such as NHibernate) and found that the
reflection wastes a lot of time.

not 100% sure, I only assume it won't use reflection at runtime, as it
already knows the stuff at compile time, so why not emitting it into
the code directly..

Reflection doesnt have to be that slow either, you can cache property
getter/setters reflected for example. Though nothing beats code
generation ;)

FB

--
 
Lei,

Based on the document at (watch for line wrap):

http://msdn.microsoft.com/netframew...net/html/linqprojectovw.asp#linqprojec_topic6

In the section titled "SQL Integration", it states:

To issue a query against a relational store, the DLinq implementation of the
LINQ pattern translates the query from its expression tree form into a SQL
expression and ADO.NET DbCommand object suitable for remote evaluation

So basically, its constructing a query that is sent to the server. I
can't imagine that they would not open this up to other data providers (as a
matter of fact, you could probably do it on your own with the bits that they
released).

It just so happens that they targeted SQL Server first (I wonder why,
haha).

Hope this helps.
 
Back
Top