Click here to Skip to main content
13,047,131 members (58,095 online)
Rate this:
Please Sign up or sign in to vote.
I am using Entity framework for my project with sqlite as the database. I need to let the user choose their file at run time, and I would think that I have it all squared away. However when I construct my EF entities object it throws an exception and I can't figure out what I am missing.
string connection = String.Format("metadata=res://*/MyData.csdl|res://*/MyData.ssdl|res://*/MyData.msl;provider=System.Data.SQLite;provider connection string="data source={0}"", file);
_data = new MyDataEntities(connection);

I get the exception: "Keyword not supported: 'data source'."

Solved by OP himself. Posted as an answer.
Posted 16-Apr-11 8:59am
Updated 16-Apr-11 17:53pm
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Ok I found my problem. I coppied my connection string straight from an app.config. The culprit was the " in the two places it was showing up. Changing it to 'data source={0}' solved the issue.
Rate this: bad
Please Sign up or sign in to vote.

Solution 2

can you please write the final connection string needed?
im in the same problem..
DannyStaten 19-Sep-15 10:53am
I don't have that solution readily available any more. If I am understanding my old post, I would suspect that it I changed the " simply to the literal single quote. So I am guessing it looks like this:
string connection = String.Format("metadata=res://*/MyData.csdl|res://*/MyData.ssdl|res://*/MyData.msl;provider=System.Data.SQLite;provider connection string='data source={0}'", file);
_data = new MyDataEntities(connection);

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web01 | 2.8.170713.1 | Last Updated 19 Sep 2015
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100