Moving From LINQpad to a Proper Visual Studio Project? Moving From LINQpad to a Proper Visual Studio Project? oracle oracle

Moving From LINQpad to a Proper Visual Studio Project?


Yes, it's technically possible to use the typed DataContext that LINQPad creates within your own VS solution. You can extract it by running a query such as this:

File.Copy (GetType().BaseType.Assembly.Location, ...

As Tom suggests, you'll also need to copy the supporting files in C:\ProgramData\LINQPad\Drivers\DataContext\4.0\IQDriver. Bear in mind that LINQPad uses the DevArt Oracle dotConnect as the ADO.NET backend for Oracle, for which you'll need to buy a commercial license in order to use in your own projects.

Another issue is that there's no way to customize the typed DataContext and this could prove limiting within the context of writing a VS solution (LINQPad generates the typed DC via Reflection.Emit and so there's no source code to tweak).

If you want to access Oracle databases via LINQ in a VS project, a better option might be buy DevArt's professional edition of dotConnect for Oracle which gives you an entire stack including an integrated VS designer for writing DataContexts (so you won't need IQ). The whole experience is very much like LINQ to SQL, but for Oracle (in fact, they've mimicked the API whereever possible which eliminates the learning curve). DevArt's LINQ translation engine has improved over the years and is now close to IQ's in translation ability (and better in some ways).


Yes, you can use the IQ (IQToolkit & IQToolkit-Oracle Provider) within your projects. You can get the dlls from your LINQPad install (C:\ProgramData\LINQPad\Drivers\DataContext\4.0\IQDriver*).

You will also want to use IQToolkit CodeGen tool to create your Entities and mappings.


As you know, Linq to SQL doesn't support Oracle natively.

A previous SO poster says "As of beta version 4.35, LINQPad supports Oracle fully - you can now do "LINQ to Oracle" queries. I believe it uses the DevArt dotConnect libraries for managing this great feat." [see https://stackoverflow.com/questions/1376132/linqpad-and-oracle/6821073#6821073]

which makes me think that if you want the same functionality outside of LinqPad your going to have to get the dev art oracle connector