如何使我的连接字符串在C#中通用,又称为如何使它对我的应用程序的每个用户都可用?

如何使我的连接字符串在C#中通用,又称为如何使它对我的应用程序的每个用户都可用?,c#,connection-string,C#,Connection String,好的,我正在做高中C#的最后一个项目。我必须包括数据库的最佳成绩。 我的proffesor说她无法启动我的程序,因为她无法在她的电脑上读取我的数据库文件。我知道我的连接字符串使用的是我的电脑信息,而不是她的。那么,我如何使连接字符串在她的PC上也可用呢?我只想让我的应用程序在启动它的每台电脑上都可用 如果您无法查看图片,这里是我的连接字符串:Provider=Microsoft.ACE.OLEDB.12.0;Data Source=“C:\Users\matij\Desktop\Maturski

好的,我正在做高中C#的最后一个项目。我必须包括数据库的最佳成绩。 我的proffesor说她无法启动我的程序,因为她无法在她的电脑上读取我的数据库文件。我知道我的连接字符串使用的是我的电脑信息,而不是她的。那么,我如何使连接字符串在她的PC上也可用呢?我只想让我的应用程序在启动它的每台电脑上都可用

如果您无法查看图片,这里是我的连接字符串:Provider=Microsoft.ACE.OLEDB.12.0;Data Source=“C:\Users\matij\Desktop\Maturski rad\Maturski rad\bin\Debug\NormaBaza.accdb”

使用而不是硬编码路径

大概是这样的:

var localAppData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
connection.ConnectionString = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\"{localAppdata}\MyAppName\MyDb.accdb\"";

它必须是MS Access数据库吗?像SQLite这样的嵌入式数据库与应用程序打包在bin文件夹中,因此没有路径或驱动程序问题。而swtich的代码是一个非常简单的转换。