Linq to LLBLGen Pro BETA released!

Posts   
 
    
Otis avatar
Otis
LLBLGen Pro Team
Posts: 39622
Joined: 17-Aug-2003
# Posted on: 12-Mar-2008 16:43:09   

First released: 12-mar-2008 Official support forum: http://www.llblgen.com/tinyforum/Threads.aspx?ForumID=40

This is beta software and it uses a pre-liminairy build of the v2.6 runtime libraries. This means that during the beta period, the ORMSupportClasses and some DQEs will contain breaking changes.

CHANGELOG

12-mar-2008: First release

USAGE LICENSE

You need a valid LLBLGen Pro v2.x license to use this beta. As this is preliminairy code, it's not recommended to use this code in production.

REQUIREMENTS

.NET 3.5 SDK or VS.NET 2008 installed, LLBLGen Pro v2.5 designer, access to a supported database.

SUPPORTED DATABASES BY THIS BETA

  • SqlServer 7/2000/2005/Express. 2008 hasn't been tested but should work OK. CE Desktop isn't supported.
  • Oracle 9i/10g/11g. 9i requires ANSI joins to be enabled in the config file (see LLBLGen Pro manual)
  • IBM DB2
  • MySql
  • Firebird 2.0+
  • PostgreSql 7.4+
  • MS Access 2000+
  • Sybase ASA
  • Sybase ASE

Oracle 8i and SQLSERVER CE DESKTOP will be added before RTM.

HOW TO INSTALL

1) If you already have installed LLBLGen Pro v2.5, create a COPY of the installation folder. This will be your v2.6 beta installation. If you don't have v2.5 installed yet, install it, and place your v2.x license file in the installation folder. 2) Copy the folders: Tasks, Templates and RuntimeLibraries into this folder. This will overwrite existing files. Be sure you overwrite the existing files. 3) Done.

IMPORTANT: DO NOT INSTALL ANY RUNTIMELIBRARIES IN THE GAC.

GETTING STARTED

Linq is a VS.NET 2008/.NET 3.5 technology. This means that to get started, you have to generate code using your v2.6 installment of the v2.5 designer (see above) with specifying '.NET 3.5' as the target platform. If you're going to use existing v2.5 code, be aware that some things will break. Fix them manually. Also check the preliminairy .doc shipped with this beta containing the breaking changes descriptions.

Please read the 'Linq to LLBLGen Pro beta.doc' document in full. It contains invaluable information what is supported what isn't supported and why.

To understand what's possible with Linq to LLBLGen Pro, we've shipped our unittests for Linq with this installment. We also included scripts to re-generate the DALs. It's likely that not all these tests will succeed on your database, as they're written to expect the data of our databases. This is ok, all tests succeed here. Use the testcode as examples (we included 232 adapter and 232 selfservicing tests) of different queries to use with Linq.

BUILDING THE GENERATED CODE

After generating the code for '.NET 3.5' as the target platform, you can build the code in vs.net 2008. It's likely the references to the runtime libraries are wrong. Fix them manually: - Adapter: DBGeneric project: has to have reference to ORMSupportClasses v2.6 and LinqSupportClasses - Adapter: DBSpecific project: has to have reference to ORMSupportClasses v2.6 and the DQE assembly of the database used, v2.6 - SelfServicing: has to have references to ORMSupportClasses v2.6, LinqSupportClasses v2.6 and DQE of the database used, v2.6.

GETTING HELP WHEN SOMETHING GOES WRONG

As this is beta code, it might be that it crashes. We did extensive testing on it, but as the code is very complex it might be we've overlooked some possible scenario's etc. The list below is ESSENTIAL to follow. If you don't obey this list, we can't help you and therefore won't help you. This is bad for you and for us, because we then might not fix a bug and you're not able to proceed. So please obey this list.

Linq is an abstraction layer above the LLBLGen Pro query API, so it means it's harder to track down errors. To be able to track down errors, before you post a question, please: - make SURE you're using the latest beta build - enable tracing of the DQE through the config file and obtain the generated query. - if you run into a crash, always obtain the FULL stacktrace. - always provide the full query in linq code - always provide information about inheritance structures of ALL entities involved in the query - always provide DDL SQL for the tables involved.

Always post your feedback in the appropriate forum: http://www.llblgen.com/tinyforum/Threads.aspx?ForumID=40 threads for Linq to LLBLGen Pro which are posted in other forums will be moved to that forum.

SOURCECODE

The v2.6 sourcecode of the runtime libraries and the full sourcecode of the Linq provider (LinqSupportClasses) is provided. Please check the license.txt file and also the license remarks in each individual file for more details about the license under which the sourcecode is provided to you.

Frans Bouma | Lead developer LLBLGen Pro
tangent
User
Posts: 41
Joined: 30-Apr-2006
# Posted on: 13-Mar-2008 07:07:18   

Very nice work Frans, I am up and running with the beta, benchmarking better performance than just using plain adapter on many queries!

Can't wait for v2.6, and moreover.. v3.0 smile

ps. Would be nice if you could include a dump of the db for the inheritance tests in the next drop, I had to remove them all to get the unit test project to compile.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39622
Joined: 17-Aug-2003
# Posted on: 13-Mar-2008 10:39:26   

tangent wrote:

Very nice work Frans, I am up and running with the beta, benchmarking better performance than just using plain adapter on many queries!

Cool simple_smile Though, the linq stuff simply produces LLBLGen Pro query objects, like predicates etc., so if it's faster, it also might be you're seeing the 20% performance increase Microsoft added to ADO.NET in .NET 3.5 wink

ps. Would be nice if you could include a dump of the db for the inheritance tests in the next drop, I had to remove them all to get the unit test project to compile.

You can generate code for it if you want: load the inheritance lgp file -> F7 -> select SQL for target platform -> generate DDL SQL simple_smile

Frans Bouma | Lead developer LLBLGen Pro
Floris
User
Posts: 6
Joined: 05-Aug-2006
# Posted on: 14-Mar-2008 10:10:23   

Congratulations! Hope to have some time soon to try it. I'm confident it will be great, as your product always has been!