Download available for SQL Server Compact 3.5 SP1 Beta for ADO.Net Entity Framework Beta 3


The SQL Server Compact 3.5 SP1 Beta for ADO.Net Entity Framework Beta 3 is available for download at Microsoft Download Center.


To install SQL Server Compact 3.5 SP1 Beta Release for ADO.NET Entity Framework Beta 3



  1. Install ADO.NET Entity Framework Beta 3 from Microsoft Download Center. You must ensure that the pre-requisites specified on the download page are installed before installing ADO.NET Entity Framework Beta 3.

  2. In Control Panel, double-click Add or Remove Programs. Uninstall SQL Server Compact 3.5 or SQL Server Compact 3.5 SP1 Beta.

  3. Install SQL Server Compact 3.5 SP1 Beta Release for the ADO.NET Entity Framework Beta 3 (SSCERuntime-ENU.msi) from the Microsoft Download Center. Note that administrator rights are required on a computer to install SQL Server Compact 3.5 SP1 Beta Release for ADO.NET Entity Framework Beta 3.

To install ADO.NET Entity Framework Tools December 07 Community Technology Preview (CTP)



  1. Install the ADO.NET Entity Framework Beta 3 and SQL Server Compact 3.5 SP1 Beta Release for the ADO.Net Entity Framework Beta 3 as specified above. Install ADO.NET Entity Framework Tools December 2007 CTP from the Microsoft Download Center. You must ensure that the pre-requisites specified on the download page are installed before installing ADO.NET Entity Framework Tools December 2007 CTP. The CTP installs on a Visual Studio 2008 installation.

  2. Copy the SQL Server Compact 3.5 SP1 Design Tools Beta (SSCEVSTools-ENU.exe) to your computer by clicking on Save or Save this program to disk and after the download is complete install SSCEVSTools-ENU.exe by double-clicking it. Do not install the SSCEVSTools-ENU.exe by clicking on the Run. While running the SSCEVSTools-ENU.exe file, Microsoft.SqlServerCe.Client.dll is extracted to %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE folder. The SSCEVSTools-ENU.exe will create a backup of the existing DLL at the location %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE.

For uninstalling SQL Server Compact 3.5 SP1 Beta refer to the read me.


The steps to create a sample application are as given below:


1.    Start Visual Studio 2008 and create a console project by clicking on the menu item File à New à Project. In the New Project window expand Visual Basic or Visual C#, select Windows and then select Console Application. For the project the .Net Framework version should be .Net Framework 3.5. Name the project as SQLCompactEDMProject. On clicking OK the project is created


2.    To generate the Entity Data Model for the Northwind.sdf, copy the Northwind.sdf from the folder %Program Files%\Microsoft SQL Server Compact Edition\v3.5\Samples to the users folder like C:\Users\<login name>\Documents\Visual Studio 2008\Projects\SQLCompactEDMProject\SQLCompactEDMProject. Select the SQLCompactEDMProject in the Solution Explorer and right-click, point to Add, and then click New Item. Select ADO.NET Entity Data Model in the Templates pane. Enter Northwind.edmx for the model name and click Add. The opening page of the Entity Data Model Wizard is displayed.


3.    Select Generate from database in the Choose Model Contents dialog box and click Next. Click the New Connection button. The Connection Properties dialog box is displayed.


4.    In the Connection Properties dialog click the button Change in the Data Source. In the Change Data Source dialog box select Microsoft SQL Server Compact 3.5 and click OK. Click the radio button My Computer in the Data Source. In the Connection Properties browse to the Northwind.sdf and click OK in the Connection Properties dialog. The Choose Your Data Connection screen in the Entity Data Model Wizard comes up.  


5.    The checkbox in front of Save entity connection settings in App.Config as: will be clicked by default. Change the name in the dialog from Entities to NorthwindEntities. Click Next to continue.


6.    The Choose Your Database Objects dialog box is displayed. By default all the tables in the database are selected and will be included in the EDM. Uncheck the box next to Tables. This deselects all the tables in the database. Expand the Tables node and select the Customers, Orders, and Products tables. Change the  Model Namespace: from Model to NorthwindModel


7.    Click Finish to complete the wizard.


a.    The wizard does the following:


b.    Adds references to the System.Data, System.Data.Entity, System.Core, System.Security, and System.Runtime.Serialization assemblies.


c.    Generates an .edmx file which encapsulates the information from the EDM mapping files.


d.    Creates an App.Config file.


8.    Double click the App.Config file in the Solution Explorer to open it. Change the provider entry from provider=Microsoft.SqlServerCe.Client.3.5 to provider=System.Data.SqlServerCe.3.5


9.    Add an Imports (Visual Basic) or using (C#) statement at the beginning of the file to reference the EDM created from the Northwind database. (The name of the model corresponds to the value of the namespace attribute in your .edmx file).


Visual Basic


Imports SQLCompactEDMProject.NorthwindModel


C#


using NorthwindModel;


10. Add the following code to the Main subroutine (Module1.vb or Program.cs)


Visual Basic


Using db As NorthwindEntities = New NorthwindEntities


Dim customers = From c In db.Customers _


Where c.City = “London” _


Order By c.Company_Name Select c


For Each c As Customers In customers


Console.WriteLine(c.Company_Name)


Next


Console.ReadLine


End Using


C#


using (NorthwindEntities db = new NorthwindEntities())


{


var customers = from c in db.Customers


where c.City == “London”


orderby c.Company_Name


select c;


foreach (Customers c in customers)


{


Console.WriteLine(c.Company_Name);


}


Console.ReadLine ();


}


11. Press CTRL+F5 to run the application. After the results display on the console screen press enter to exit the application


For more information and samples please see the ADO.NET Entity Framework Beta 3 Documentation and ADO.NET Entity Framework Samples


Regards,


 


Ambrish Mishra


Program Manager – SQL Server Compact

Comments (8)

  1. William says:

    Installed, but don’t see the "ADO.NET Entity Data Model " in any template when I select new item. Like it is not there.

  2. Quite a bit of activity last week in the Visual Studio and ORM spaces. Visual Studio released a CTP of

  3. SQL CE Team says:

    In case you do not see the ADO.Net Entity Data Model in the Add New Item check that the XML Editor QFE has been installed from http://go.microsoft.com/fwlink/?LinkID=104985

    Regards

    Ambrish

  4. David Jacobson says:

    The entity framework supports the express editions of Visual Studio 2008.  However, the SQL Server Compact Design tools will not install with just the express editions.  Is that intentional?  Are the design tools required for local use of SQL Server Compact Edition?

  5. Will says:

    I’m getting the same "Setup Error: Microsoft Visual Studio 2008 is not found" issue described in http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=333272

    I have VS2008 on 64-bit Vista, fully patched.  I thought it might be a confilict with SQL Server Business Intelligence Development Studio that is installed as part of the SQL Server Management Studio for SQL 2005, but after removing it and Visual Studio 2005 Tools for Office Second Edition Runtime

    and Visual Studio 2005 Premier Partner Edition I’m still getting the error.  Any advice?

  6. Hey Will,

      We are working on this issue actively and we should update/refresh the release binaries soon which would work on 64-bit

    Thanks,

    Laxmi

  7. Daniel Fernandes says:

    This is a bit off topic but do you know if the newest version of SQL CE removes some of the limitations of the engine that meant it wasn’t suitable for multi-threaded applications ?

    We have built an application based around Linq2SQL to provide data access, SQL CE 3.5 to run on client machines and Synchronization Framework to keep the local SQL CE databases up to date.

    We noticed random freezes that affect the UI thread (this is a WPF application) and we suspect that the SQL CE engine has a built in limitations with the quantity of threads accessing the database.

    PS: we do some data access on the UI thread, and on some others in the threadpool (the one that runs the synchronization process).

  8. Daniel,

     SQL CE has multi-threading support which you also seem to have used in your application.  Now, coming to the number of threads it would scale is a good question.  In our internal testing we have seen it doing good till 50 connections.  After that there is a dip in the curve.  However, I am not sure on if this information alone is enough for you to start with.   Can you please elaborate a bit more on random freeze as I am not able to get what you mean by random freeze, does it happen on huge query.  Did you check with single thread the same query?  Please contact us through ‘Blog Contact’ page on the top so that we can converse and dive into details.

    Thanks,

    Laxmi