1
我正在使用ServiceStack.OrmLite與SQL Server提供程序。ServiceStack.OrmLite中的SQL Server異常處理的最佳做法?
考慮下面的代碼片段:
是否有用於檢索SQL服務器異常的最佳做法?
什麼是最好的方法來知道是否在db.Single調用的結果中記錄?當db.Single被一個無效的消息ID(即不在數據集中的消息ID)調用時,似乎我得到一個異常。如果消息ID存在於數據庫中,則調用無例外返回。有沒有辦法做到這一點沒有try catch塊?
異常,如果調用沒有try/catch塊製作:
ArgumentNullException值不能爲空。
參數名:ENSMessageEntry: 'ID = 25' 不存在
這裏是我的代碼:
public ENSStatusResponse GetMessageStatus(int messageID)
{
var statusResponse = new ENSStatusResponse();
using (var db = DBConnectionFactory.OpenDbConnection())
{
try
{
ENSMessageEntry mes = db.Single<ENSMessageEntry>("ID = " + messageID);
statusResponse.ENSMessageStatus = mes.Id;
}
catch
{
statusResponse.ENSMessageStatus = 0;
}
}
return statusResponse;
}
非常感謝您的回覆。我意識到你的觀點 - 只是想知道是否有計劃通過ORMlite堆棧獲取SQLExceptions。至於#2 ...這就是我正在尋找的,謝謝 – overclocker