0
我有一些問題:如何在wcf中做異常處理?
- 它需要使用嘗試捕捉在
- 我簡單分層WCF服務WCF服務的所有層:
,並定義:
[DataContract]
public class ProductFault
{
public ProductFault(string msg)
{
FaultMessage = msg;
}
[DataMember]
public string FaultMessage;
}
並且具有:
public Product GetProduct(int id)
{
ProductBDO productBDO = null;
try
{
productBDO = productLogic.GetProduct(id);
}
catch (Exception e)
{
string msg = e.Message;
string reason = "GetProduct Exception";
throw new FaultException<ProductFault>
(new ProductFault(msg), reason);
}
if (productBDO == null)
{
string msg =
string.Format("No product found for id {0}",
id);
string reason = "GetProduct Empty Product";
throw new FaultException<ProductFault>(new ProductFault(msg), reason);
}
Product product = new Product();//****
TranslateProductBDOToProductDTO(productBDO,
product);
return product;
}
當我通過無效id
爲「GetProduct」的方法我收到此錯誤信息:
如何避免在我的業務層提高錯誤信息併發送至客戶端?
如何以及在哪一層我們可以使用try catch來處理數據庫異常,例如無法連接到數據庫? – 2014-12-03 02:28:43