2

Resolved

Improve the expression parsing code

description

The expression parsing code is pretty basic as of release v0.8 preview. It is quite fickle about what you can use in a query. For example, the following example are valid in a query:
 
1)
var q = from stat in context.RacerStats where stat.RacerName == "elkdanger" select stat;
 
2)
string racerName = "elkdanger";
var q = from stat in context.RacerStats where stat.RacerName == racerName select stat;
 
But the following wouldn't work:
var q = from stat in context.RacerStats where stat.RacerName == GetRacerName() select stat;
 
.. where GetRacerName() is some method which returns a string.
 
I think what's probably going to happen is LinqExtender will be integrated with this project to provide solid expression parsing, whilst not affecting the public interface in any way. It will however make for more expressive queries.

comments

elkdanger wrote Jun 12, 2008 at 5:30 PM

Revision 9530 now contains re-implemented expression parsing code using custom expression visitor code built upon some classes provided by MSDN. This now properly implements IQueryable and IQueryProvider, to provide a more expressive experience when using the library.

I'm currently working on a unit test project which will thoroughly test this library, which will be available in (hopefully) the next revision.

wrote Jun 12, 2008 at 5:30 PM

wrote Jan 21, 2013 at 6:38 PM

wrote May 9, 2013 at 7:49 AM

wrote May 9, 2013 at 7:49 AM

wrote Jun 4, 2013 at 1:56 AM