2013-10-30 72 views
0

我正在實現一個用於Web API項目的BufferedMediaTypeFormatter,但在重寫BufferedMediaTypeTormatter上的ReadFromStream時,我找不到任何有關如何處理錯誤的詳細信息。處理BufferedMediaTypeFormatter派生類中的錯誤

我知道我應該將錯誤寫入IFormatterLogger.LogError方法,但是如果輸入無效,我應該返回什麼?我應該返回null嗎?或拋出異常?如果是這樣,應拋出哪個異常?

回答

0

這取決於您正在尋找的用戶體驗種類。

如果拋出異常,Web API會將請求處理短路,並返回500 Internal Server響應(有或沒有基於您的HttpConfiguration.IncludeErrorDetailPolicy設置的異常詳細信息)。

如果通過日誌錯誤IFormatterLogger.LogError(你可以返回在這種情況下空),則請求處理是短路和用戶將需要檢查的ModelState有效性找出是否有任何錯誤。

+0

謝謝,我會去找後者。 –