2013-07-29 18 views
0

我想使用TempData處理以下錯誤:如何在asp.net mvc中使用TemData []處理錯誤?

1)我的自定義由我定義的錯誤,如果某些條件未滿足。

2)顯示確切的SQL服務器錯誤。

注:我在代碼後使用重定向。

+0

以下是關於這個主題很好看的 [此處輸入鏈接的描述] [ 1] [1]:http://stackoverflow.com/questions/717628/asp-net-mvc-404-error-handling – Janki

+0

如果發生錯誤,您不應該重定向。 –

回答

0

可能是你需要這樣的:在控制器

public ActionResult SaveProduct(Product model) 
    { 
     var ErrorString = null; 

     // your custom validations for example, 
     if(model.Name == null) ErrorString = "Name is empty"; 

     try 
     { 
     // your db save operations 
     } 
     catch (Exception exception) 
     { 
     ErrorString = exception.Message; 
     } 

     if(ErrorString != null) TempData["Error"] = ErrorString; 
     return Redirect("YourAction"); 
    } 

,並考慮:

@{ 
    var error = (string)TempData["Error"]; 
} 


@if (!string.IsNullOrEmpty(error)) 
    { 
     <p>@Html.Raw(error)</p> 
    }