2013-03-21 13 views
1

如何在WEB API的響應主體中的應用程序中添加未處理的異常。如果沒有例外,則需要將成功消息發送給響應主體以獲取所有響應....需要有關實現此目的的幫助。如何在WEB API的響應主體中的應用程序中添加未處理的異常

+0

你需要詳細說明你的問題,並提供你的代碼,以顯示你如何嘗試 – 2013-03-21 09:29:12

+0

我在每個模型中使用異常類,並將類附加到來自WEB API的返回響應消息。 – Mohan 2013-03-21 09:32:01

回答

2

你需要兩件事。爲處理異常,您需要在HttpConfiguration對象中設置IncludeDetailErrorPolicy,您可以將錯誤策略首選項配置爲IncludeErrorDetailPolicy屬性中配置對象(HttpConfiguration)的一部分。這只是一個枚舉,指示Web API如何處理異常。

此枚舉可能的值是,

默認:這是如果你正在使用ASP.NET作爲主機或設置LocalOnly自我主機使用的customErrors配置設置。 設置LocalOnly:只包括本地請求 總是錯誤的詳細信息:始終包含錯誤的詳細信息 從不:不包括錯誤的詳細信息

當有異常情況發生,網絡API將檢查該設置的值,包括有關在異常的詳細信息響應消息還是不響應。例如,如果始終啓用,則Web API將序列化異常詳細信息作爲您作爲響應獲得的消息的一部分。

成功消息沒有太大意義,因爲您已經有響應狀態代碼。狀態碼等於OK表示一切正常。如果您仍想添加其他消息,請使用HttpMessageHandler來檢查響應狀態代碼。如果狀態碼正常,請添加消息。但是,響應主體已經在那個時候被設置好了,所以你不能修改它。您可以將消息添加爲標題。

+0

一個評論 - 你仍然可以在HttpMessageHandler中更改響應正文。該回復尚未發送。只有所有消息處理程序完全運行後纔會發送。 – 2013-03-21 15:38:16

相關問題