我有.mdf
个文件。我想在桌面应用程序的c#中使用它。
这是我的连接字符串:
string cwd = System.IO.Directory.GetCurrentDirectory();
string ConString = @"Data Source=.\SQLEXPRESS; AttachDbFilename=" + cwd + "\\SalaryProgram.mdf;Integrated Security=True;User Instance=True";
如何在C#中使用.mdf
文件?
我收到此错误:
尝试为文件D:\ Naresh Backup \ SalaryProgram \ Latest Work \ SalaryProgram \ SalaryProgram \ bin \ Debug \ SalaryProgram.mdf附加自动命名的数据库失败。存在具有相同名称的数据库,或者无法打开指定的文件,或者它位于UNC共享上。
提前致谢。
答案 0 :(得分:1)
检查以下3件事:
确保您的MDF文件是由与目标计算机上安装的相同或较旧版本的SQL Server创建的。
确保目标计算机上的SQL Server尚未具有同名的数据库。
总是更喜欢Path.Combine()
而不是直接连接文件夹路径和文件名。有时函数会返回结束反斜杠字符作为路径的一部分,有时则不会。因此,直接连接可能导致非法路径。
您可能也希望查看|DataDirectory|功能,GetCurrentDirectory()
。
答案 1 :(得分:0)
在我之前的一个项目(C#中的winform应用程序)中,我使用的是DB“EmployeeMaster”。
对我有用的连接字符串是:
“数据源=(本地)\ SQLExpress;初始目录= EmployeeMaster; Trusted_Connection =是;”
试一试。
答案 2 :(得分:0)
我真的建议您定期将此MDF文件附加到本地实例,然后连接到数据库。在asp.net应用程序中附加mdf文件并不是最好的方法。
只需将连接字符串添加到您的aplication配置文件
即可<connectionStrings>
<add name="yourConnectionString" connectionString=
"Data Source=(local); Initial Catalog=database_name;Integrated Security=True"
providerName="System.Data.SqlClient"/>
</connectionStrings>
然后在你的代码中使用它:
string ConString = ConfigurationManager.ConnectionStrings["yourConnectionString
"].ConnectionString