Hi:
I am developing a Desktop application using SQL Server CE 3.5 Database.
I have created the SQL Project to generate the code and changed the connection string in app.confing and set the compatibility to 4.
My requirement is that the client computer should use the CE 3.5 database without installing SQL Server CE 3.5.
When I launch the application, I get this error:
************** Exception Text **************
System.TypeInitializationException: The type initializer for 'SD.LLBLGen.Pro.DQE.SqlServer.DynamicQueryEngine' threw an exception. ---> SD.LLBLGen.Pro.ORMSupportClasses.ORMGeneralOperationException: There's no ADO.NET provider defined / found for the compatibility level 'SqlServerCE35'. Please make sure either the machine.config or this application's .config file contains a definition of the provider.
at SD.LLBLGen.Pro.DQE.SqlServer.DynamicQueryEngine.SetFactoryToUse()
at SD.LLBLGen.Pro.DQE.SqlServer.DynamicQueryEngine.set_CompatibilityLevel(SqlServerCompatibilityLevel value)
at SD.LLBLGen.Pro.DQE.SqlServer.DynamicQueryEngine..cctor()
--- End of inner exception stack trace ---
at SD.LLBLGen.Pro.DQE.SqlServer.DynamicQueryEngine..ctor()
at ES.ABC.DAL.DatabaseSpecific.DataAccessAdapter.CreateDynamicQueryEngine() in D:\ABCDAL.CE\DatabaseSpecific\DataAccessAdapter.cs:line 458
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateSelectDQ(IEntityFields2 fieldsToFetch, IFieldPersistenceInfo[] persistenceInfoObjects, IPredicateExpression filter, Int64 maxNumberOfItemsToReturn, ISortExpression sortClauses, IRelationCollection relationsToWalk, Boolean allowDuplicates, IGroupByCollection groupByClause, Int32 pageNumber, Int32 pageSize)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal(IEntityCollection2 collectionToFill, IRelationPredicateBucket& filterBucket, Int32 maxNumberOfItemsToReturn, ISortExpression sortClauses, ExcludeIncludeFieldsList excludedIncludedFields, Int32 pageNumber, Int32 pageSize)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollection(IEntityCollection2 collectionToFill, IRelationPredicateBucket filterBucket, Int32 maxNumberOfItemsToReturn, ISortExpression sortClauses, IPrefetchPath2 prefetchPath, ExcludeIncludeFieldsList excludedIncludedFields, Int32 pageNumber, Int32 pageSize)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollection(IEntityCollection2 collectionToFill, IRelationPredicateBucket filterBucket)
at ABCClient.BusinessLayer.XManager.FetchXCollection() in D:\Projects\ABCClient\ABCClient\BusinessLayer\XManager.cs:line 65
at ABCClient.frmMain.SetGlobalYCode() in D:\Projects\ABCClient\ABCClient\frmMain.cs:line 89
at ABCClient.frmMain.frmMain_Load(Object sender, EventArgs e) in D:\Projects\ABCClient\ABCClient\frmMain.cs:line 76
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
I do build LLBL Dlls outside of the project and reference them in my application. When I build the LLBL Dlls, Do I need to reference any DLLs for CE support, so the application runs without installation of SQL Server CE 3.5 in client machine?
Thank you for your help.
PS: When I install SQLServer CE 3.5 in client's workstation, it works just fine.