README.TXT FILE FOR "OPTIMIZE LINQ TO SQL PERFORMANCE" (vISUAL sTUDIO MAGAZINE, NOVEMBER 2007) SAMPLE PROJECTS

1. The VS0711RJ.zip file contains the following four projects that implement LINQ to SQL classes:
   a. DynamicSQLTestHarness.sln, a WinForms project that demonstrates dynamic SQL queries and updating
   b. StoredProceduresTestHarness.sln, same as the above except uses stored procedures for queries and updates
   c. OrdersLinqDataSourceSQL.sln, a WebForm project that demonstrates dynamic SQL queries
   d. OrdersLinqDataSourceSP.sln, a WebForm project that demonstrates stored procedures queries

Unzip the files with the Use Folder Names option selected to create a LINQTests folder with four subfolders, one for each project. Each project has its own solution (.sln) file.

2. These projects require Visual Studio 2008 Beta 2 Professional Edition or later, or a combination of Visual Basic 2008 Beta 2 and Visual Web Developer 2008 Beta 2 to compile.

3. All projects expect to find the Northwind sample database installed by attaching Northwnd.mdf to a local instance of SQL Server 2005 Express (.\SQLEXPRESS). If your Northwind installation differs, change the NorthwindConnectionString in AppName.exe.config or web.config to suit.

4. Install the required stored procedures by opening the StoredProceduresTestHarness.sln project and clicking OK to load the stored procedures. OrdersLinqDataSourceSP.sln uses the same stored procs. Click the Drop Stored Procs button to remove the procedures from the instance. (The stored procedure files are in ...\Debug\Bin folder. Not all the stored procedures in the file are used by these projects.)

5. Launching OrdersLinqDataSourceSQL.sln and OrdersLinqDataSourceSP.sln provide brief instructions for selecting options in the page's text box on opening the project.

6. StoredProceduresTestHarness.sln includes code to work around problems using stored procedures with LINQ to SQL Beta 2 that occur because stored procedures return a different data type (ISingleResult(Of EntityName)) than the default Table(Of TEntity) type returned by dynamically generated T-SQL.

For additional information on the use of (and possible RTM updates to these projects), go to the OakLeaf Systems blog (http://oakleafblog.blogspot.com) and search on VS0711RJ.

The VB.NET source code in the accompanying files is Copyright (c) 2007 Roger Jennings All Rights Reserved. This software is licensed to others for copying, adapting, distribution and transmission under the Creating Commons Attribution 3.0 Unported license (http://creativecommons.org/licenses/by/3.0/)

The Equin.ApplicationFramework.BindingListView namespace and related files of the BindingListView 1.2.0.0 library (http://sourceforge.net/projects/blw) are the work of Andrew Davey and are used and distributed under a BSD license. See "Support Sorting and Filtering for List<T> Collections" (http://oakleafblog.blogspot.com/2007/09/support-sorting-and-filtering-for-list.html) for more information on use of this library with LINQ to sQL objects populated by stored procedures. The post also describes the minor changes made to the library for compatibility with the projects.

Enjoy.

Roger_Jennings@Compuserve.com
