我正在用C#开发一个类库,在这个类库中,我试图通过ADO.NET代码访问数据库,但是我收到了这个错误。我不知道背后的原因是什么。所以请告诉我如何解决它。
System.Data.SqlClient.SqlException:尝试为文件C:\ Users \ vivek.nuna \ Documents \ VisualStudio2005 \ Projects \ SubsystemSyncService \ TestClient \ bin \ Debug \ aspnetdb.mdf附加自动命名的数据库失败。存在具有相同名称的数据库,或者无法打开指定的文件,或者它位于UNC共享上。
这是我正在使用的连接字符串。
<connectionStrings>
<add name="RegistrationConnString"
connectionString="Server=192.168.101.145\SQLEXPRESS;Database=***_HubDB;User Id=sa;Password={C8273EFD-LB2F-4E65-8702-14B61PI08A9}"
providerName="System.Data.SqlClient" />
</connectionStrings>
注意:我在aspnetdb.mdf
文件夹中看不到文件Debug
。
这是代码,我如何使用ado.net代码。
private DataSet GetAddressFieldsAccordingtoAddressId(string strAddressId)
{
try
{
strConnString = ConfigurationManager.ConnectionStrings["RegistrationConnString"].ToString();
SqlConnection connection = new SqlConnection(strConnString);
SqlCommand command = new SqlCommand();
command.CommandType = System.Data.CommandType.StoredProcedure;
command.CommandText = "[dbo].[PL_spPLUIGetAddressFieldsAccordingtoAddressId]";
command.Parameters.Add("@lAddressID", System.Data.SqlDbType.Int).Value = Convert.ToInt32(strAddressId);
command.Connection = connection;
DataSet dsPwd = new DataSet();
SqlDataAdapter dAdapter = new SqlDataAdapter(command);
dAdapter.Fill(dsPwd);
command.Dispose();
dAdapter.Dispose();
return dsPwd;
}
catch (Exception ex)
{
return null;
}
}
我已经在C#表单中添加了这个类库的引用。
C#表单正在调用这个类库的方法。
答案 0 :(得分:0)
如果您想为应用程序提供独立数据库,则应该查看
SQL Server Compact:http://www.microsoft.com/sqlserver/2008/en/us/compact.aspx
SQLite:http://sqlite.phxsoftware.com/
对于连接字符串,请参阅http://www.connectionstrings.com/access-2003/。
SqlCeConnection sqlConnection1 = new SqlCeConnection();
sqlConnection1.ConnectionString = "Data Source = C:\\Users\\Administrator\\My Documents\\BMS_Data.sdf;Persist Security Info=False";