我在不同的情况下看到了很多相同的错误。我的特定错误是在第一个SqlConnection行中抛出的。我没有编译错误,为什么会失败呢?
SqlConnection sqlConn = new SqlConnection(WebConfigurationManager.
ConnectionStrings["DefaultConnection"].
ConnectionString);
SqlCommand command = new SqlCommand("dbo.InsertRecord", sqlConn);
sqlConn.Open();
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add(new SqlParameter("@Date", txtDate.Text));
command.Parameters.Add(new SqlParameter("@Title", TitleTextBox.Text));
command.Parameters.Add(new SqlParameter("@FirstName", FirstName.Text));
command.Parameters.Add(new SqlParameter("@LastName", LastName.Text));
command.Parameters.Add(new SqlParameter("@Comments", Comments.Text));
command.ExecuteNonQuery();
sqlConn.Close();
WebConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString
是以下字符串:
Data Source=(LocalDb)\v11.0;
Initial Catalog=aspnet-WebActivityLog-20140806121543;Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|C:\Users\v667719\Documents\Visual Studio 2013\Projects\WebActivityLog\WebActivityLog\App_Data\Records.mdf
(只是没有新行。这些是为了格式化而添加的。)
答案 0 :(得分:0)
您没有收到编译时错误,因为连接字符串是在配置中定义的,并且在编译时它不会检查其有效性。
您在AttachDBFilename中定义了|DataDirectory|
以及完整路径。再次构建连接字符串。
您可以使用Visual Studio中的服务器资源管理器窗口(使用菜单View / Server Explorer打开)并从该窗口连接到您的服务器/数据库,您可以从那里获取连接字符串。
要获得正确的连接字符串格式,请参阅here。