0
我在c#中得到了下面的代碼。如何在C#2.0中處理SQL Query CommandTimeout
SqlConnection conn = new SqlConnection("Data Source=MANOJ-PC\\SQLEXPRESS;Initial Catalog=master;Integrated Security=False;User Id=sa;Password=Manoj;");
conn.Open();
if (conn != null)
{
//create command
SqlCommand cmd = new SqlCommand("dbo.GETTridionLinkData", conn);
cmd.Parameters.AddWithValue("@PageID", "637518");
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 500;
StringBuilder sbXML = new StringBuilder();
//Adding Root node
sbXML.Append("<TridionLinks>");
//Reading all the values of Stored procedure return
using (XmlReader reader = cmd.ExecuteXmlReader())
{
while (reader.Read())
{
sbXML.Append(reader.ReadOuterXml().Replace("//", "/"));
}
}
//Closing the root node tag
sbXML.Append("</TridionLinks>");
XmlDocument xDoc = new XmlDocument();
//Loading string xml in XML Document
xDoc.LoadXml(sbXML.ToString());
}
在上面的代碼中可以看到的是,我已經設置了cmd.CommandTimeout = 500;,現在我想給用戶一個錯誤消息,如果超時時間超過這個數或者你可以說數據庫關閉。
請建議!!
感謝,我看到你發佈的鏈接,cmd.ExecuteNonQuery(); //此行將超時。那裏使用,但我使用cmd.CommandTimeout = 500;以及我使用cmd.ExecuteXmlReader()而不是cmd.ExecuteNonQuery();因此同樣的異常處理也將在這裏完成或者需要寫入其他內容 – 2012-03-02 13:04:20