0

我正在使用 sql server ce 数据库和 C#,我想知道如何真正嵌入数据库文件,所以当我完成安装应用程序后,我不需要将数据库文件复制粘贴到我在中设置的环境中以下代码:

 private void sambung()
    {
        string lokasifile = Environment.CurrentDirectory + "\\compactedition.sdf";
        string stringkoneksi = "Data Source = \"" + lokasifile + "\";Password = 'blablabla'; Encrypt = True";
        koneksi = new SqlCeConnection(stringkoneksi);
    }

你有什么建议让它成为可能吗?谢谢。

4

1 回答 1

1

如果将数据库复制到根目录或上层目录,则可以使用如下相对路径:

public static string GetLogicBinDebug()
    {
        string baseDir = AppDomain.CurrentDomain.BaseDirectory;
        return Path.Combine(baseDir, @"..\..\database.sdf");
    }

或者您可以使用相对路径在 app.config 中保留连接字符串:

<connectionStrings>
<add name="dbEDMContainer" connectionString="metadata=res://*/dbEDM.csdl|res://*/dbEDM.ssdl|res://*/dbEDM.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;Data Source=|DataDirectory|\..\..\yourDB.sdf&quot;" providerName="System.Data.EntityClient"/>

Data Source=|DataDirectory|\ 将指向“bin”文件夹

** 如果您询问如何将数据库文件复制到您的应用程序文件夹,您可以使用以下方法:

在 Visual Studio 中将数据库文件包含到您的项目中,打开文件属性并将构建操作设置为“内容”, 复制到输出目录-“如果较新则复制”或“始终复制

于 2012-08-21T08:28:07.707 回答