Development has effectively stopped, as I've been moved onto other projects (Mono for Android), and I don't know of any equivalents.
I had discussed with the re-linq & re-motion folks about rewriting DbLinq to use re-linq as the intermediate layer, so that we could share DB support, but that was waiting on (1) me getting some free time, and (2) the re-motion folks getting a DB abstraction layer finished so that we could start migrating the DbLinq SQL providers to their model.
- Jon
--
You received this message because you are subscribed to the Google Groups "DbLinq" group.
To post to this group, send email to dbl...@googlegroups.com.
To unsubscribe from this group, send email to dblinq+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/dblinq?hl=en.
It means that I have lofty plans that may never see the light of day. :-)
DbLinq could use a major refactoring (see also all the type check code riddled ~everywhere instead of using proper OO abstractions). It could use lots of help in general, frankly (see also the unit tests taking ~10 minutes to execute, _just_ for SQL Server & SQLite). I see re-motion/re-linq as a possible solution to some of this, as they have an existing LINQ abstraction to simplify the writing of IQueryable providers (which can also be used to simplify unit tests -- yay!). What's lacking is a "proper" cross-DB abstraction layer, which is where DbLinq could come in (as DbLinq already supports multiple DBs -- somewhat -- so this would be a good exercise for testing a new cross-DB abstraction).
The problem is that I lack the time to do any of this, and no one else appears to be waiting in the wings to pick things up...
- Jon
- Jon
And this is why the re-linq folks got in touch with me. Having a "standardized" cross-DB interface to re-linq/etc. would be wonderful. I had suggested following System.Data.Common.CommandTrees for the standardized interface (as that's what EF uses), but (sadly) we found that CommandTrees made all the constructors private/internal. :-(
They also determined that the CommandTrees data structures basically codified/mirrored SQL Server, e.g. (from private email discussing with the re-linq folks):
> E.g., the most efficient way to do paging on MS SQL is to use a
> BETWEEN condition where you compare row numbers against page limits.
> Because EF does not support this, the command trees also don’t support
> this and just use a TOP clausefor the upper bound.
This largely killed my idea of doing much with CommandTrees.
> This mean that I could help you too, as I did worked on the dblinq code base (up to 0.19 version).
> From my POV, dblinq used to miss good development documentation: no overall vision and so.
> I did remember it took days to dive into the code.
>
> What has changed from 0.19?
Nothing has changed. :-)
> Anyone sketched the architectural vision about the project?
I've sketched out some ideas in the 0.19 release notes:
http://groups.google.com/group/dblinq/browse_frm/thread/8260047816a6a148
See the "What needs work" section, specifically the "Code cleanup: offloading databases provider support" bullet.
> BTW is it still in the mono codebase?
A copy is in mono's codebase, but this is just an occasionally (manually) synced copy of what's in DbLinq svn.
- Jon