SDQ was a post I read from the post of LINQ in 2004. It was mainly used to develop an O/RM tool with strong ops support. Development tools: vs. NET 2003
After downloading C #9.0 quick development today, I carefully looked for some information about LINQ (previously, mainly conceptual contacts, starting from CW ). It is found that SDQ 3.0 is quite similar to some of the syntax of LINQ. There are two types:Code:
SDQ code ::
Sqrun SQ = New Sqrun ();
Sq. From (RES)
. Innerjoin (link,). On (res. rsid = Link. rsid)
. Innerjoin (PKG). On (PKG. pgid = Link. lk_objt_id)
. Where (PKG. r_pgid = Package. Define)
. And (PKG. Level = 2 )
. Select ();
LINQ code ::
Ienumerable expr = Names
. Where (S => S. Length = 5 )
. Orderby (S => S)
. Select (S => S. toupper ());
But what surprised me is the following code:
SDQ code ::
Public Static Qcondition Operator = (Qcolumn Col, Object Val)
... {
Return NewQcondition (COL,"=" +V1 (VAL ));
}
......
Qcondition Q = Quser. puid = 12 ;
LINQ code ::
Func Filter = S => S. Length = 5 ;
The conditional connection of SDQ is the result of a combination of many qcondition instances.
It makes me feel a bit self-satisfied. I used vs. NET 2003 to achieve the type effect, and the design idea is the same as that of advanced LINQ. Haha.
A few days ago, I was thinking about whether my SDQ should have died after dlinq came out. however, in the process of learning LINQ, we further confirmed that we were trying to make dlinq support my ops or make SDQ more effective in database query than dlinq.