我如何使一个非绝对的连接字符串,所以我的小数据库工作与我发布的c#应用程序
本文关键字:我的 数据库 小数 工作 应用程序 何使一 字符串 连接 | 更新日期: 2023-09-27 17:50:35
我正在做一个跟踪信息的小项目。这个c#应用程序将获取通过CSV/Excel上传的信息并对其进行存储/排序。
我当前的连接字符串是一个绝对路径(关闭u盘)。我担心当我发布它时,数据库连接将无法在随机用户的计算机上工作。
<add name="PPP_Project.Properties.Settings.Database1ConnectionString"
connectionString="Data Source=.'SQLEXPRESS;AttachDbFilename=E:'Other PPP Projects'PPP_Project_Test'PPP_Project'Database1.mdf;Integrated Security=True;User Instance=True"
providerName="System.Data.SqlClient" />
我如何设置这个,以便在应用程序发布时它将工作?
你可以这样做:
Data Source=.'SQLEXPRESS;AttachDbFileName=|DataDirectory|Customers.mdf;Integrated Security=True;User Instance=True
,如下所述。对于winform应用程序,默认的|DataDirectory|与安装应用程序的位置相同。当然,您可以使用一个更嵌套的路径的一部分。如果您想指定其他内容,可以使用AppDomain.SetData
方法。
操作连接字符串最简单的方法是使用ConnectionStringBuilder类:
OleStringBuilder = new OleDbConnectionStringBuilder(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:'MyExcel.xls;Extended Properties='Excel 8.0;HDR=Yes;IMEX=1';");
OleStringBuilder.DataSource = MapPath(@"~'App_Datav'MyExcelWorksheet.xls");