2011-08-14 50 views
0

已經通過我的教科書,但在嘗試向數據庫添加記錄時,仍然遇到捕獲內部異常的問題。在我的類中捕獲InnerException的正確語法是什麼?ASP.net InnerException:將記錄添加到數據庫

內心正在拋出db.SaveChanges。這裏是我的'addReviews.cs'類文件中的代碼添加記錄:

public void addReview(int restId, int timeID, string dateValue, string describe, int cuisineId, int serviceId, int ambianceId, string memberId) 
    { 
     REVIEW addReview = new REVIEW(); 
     addReview.REVIEW_DATE = Convert.ToDateTime(dateValue); 
     addReview.REVIEW_DATE_SUBMITTED = DateTime.Today; 
     addReview.REVIEW_DESC = describe; 
     addReview.TIME_ID = timeID; 
     addReview.REVIEWER_ID = 1; 
     addReview.FOOD_ID = cuisineId; 
     addReview.SERVCE_ID = serviceId; 
     addReview.AMBIENCE_ID = ambianceId; 
     addReview.REST_ID = restId; 
     addReview.PRICE_ID = 1; 

     //Add record to database 
     db.AddToREVIEWs(addReview); 
     db.SaveChanges(); 
    } 

在此先感謝!

回答

1

嘗試了這一點:

try 
{ 
    db.SaveChanges(); 
} 
catch(ApplicationException exception) 
{ 
    // just log and throw out 
    System.Diagnostics.Debug.WriteLine(
       String.Concat(
        "EXCEPTION: ", 
        exception.ToString)); 

    if (exception.InnerException != null) 
    { 
     System.Diagnostics.Debug.WriteLine(
       String.Concat(
        "INNER EXCEPTION: ", 
        exception.InnerException.ToString)); 
    } 

    throw; 
} 

PS:儘量捕捉更多的特定的異常,你的情況是值得趕上SqlException爲好。

+0

謝謝....我會在早上試一試...剛剛接到一個電話,該走了! – Susan

+0

OMG ...我改變了我的分貝,忘了更新實體模型。不太快。非常感謝您的幫助,因爲它會派上用場,我會繼續參與此項目。問候!!! – Susan

相關問題