更改连接字符串,SQLite,Visual Studio后无法打开数据库文件

时间:2015-09-04 20:23:07

标签: c# database visual-studio sqlite database-connection

我有一个包含2个项目的ASP.NET MVC解决方案:DAL和Web项目。 我曾经在两个项目的连接字符串中使用本地文件路径连接到我的SQLite数据库。 web.config文件:

DAL和Web项目的Web.configs:

<add name="DBEntities" connectionString="metadata=res://*/Models.Model.csdl|res://*/Models.Model.ssdl|res://*/Models.Model.msl;
provider=System.Data.SQLite;
provider connection string='data source=&quot;C:\Users\Admin\Documents\Visual Studio 2013\Projects\Myproj\Myproj.db3&quot;'" 
providerName="System.Data.EntityClient" />

一切正常,然后我需要使用DataDirectory更改连接字符串,以便我可以正确部署网站。我将db文件添加到 WEB项目App_Data文件夹中,并且web.configs都更改为:

<add name="DBEntities"
connectionString="metadata=res://*/Models.Model.csdl|res://*/Models.Model.ssdl|res://*/Models.Model.msl;
    provider=System.Data.SQLite;
    provider connection string='data source=&quot;|DataDirectory|\Myproj.db3&quot;'" 
    providerName="System.Data.EntityClient" />

现在,我可以通过代码连接到数据库提取数据,但我无法在服务器资源管理器中打开数据库并使用设计器,错误是:&#34;无法打开数据库文件&#34;。

我将不胜感激任何帮助!

1 个答案:

答案 0 :(得分:0)

我曾经这样使用。如果您愿意,可以尝试。

private readonly static string ConnectionKey = @"C:\Users\Mehmeto\Documents\Visual Studio 2015\Projects\......\bin\myDB.sqlite";

    public static SQLiteConnection GetConnection()
    {

        SQLiteConnection conn = new SQLiteConnection("Data Source=" + ConnectionKey + ";Version=3;", true);
        return conn;
    }