【发布时间】:2013-12-13 15:59:48
【问题描述】:
我有一个上传控制器的视图,它会触发这个 ActionResult:
[HttpPost]
public ActionResult ProcessSubmitUpload(HttpPostedFileBase attachments, Guid? idDocument)
{
//Validations
var xmlDocument = XDocument.Load(attachments.InputStream);
DocumentCommonHelper.SendFile(xmlDocument);
}
SendFile 方法:
public static void SendCte(XDocument xmlDocument)
{
var client = new WsSoapClient();
client.InsertXML(xmlDocument);
}
如果出现问题,Web 服务会返回 SoapException,例如: “IDDocument 不存在”等
但在 MVC 中,当我调试时,如果 InsertXml 方法出现问题,我无法捕捉到它,调试导航就会停止并抛出 Upload File 错误。
我想在我的操作中捕获 InsertXML 方法的返回消息并将其返回到我的视图中。就像一个“警报”弹出窗口。 我该怎么做?
【问题讨论】:
-
使用
try{}catch{}捕获错误。如果你想要一个弹出窗口,我会考虑使用 Jquery UI Dialog 。通过 jquery 或 javascript 处理异步操作将允许您捕获返回的消息或 HTML 并生成您的对话框。 -
@James 我需要处理什么样的异常?
-
你应该首先处理你认为可以返回的任何异常,然后总是最后处理
exception以捕获任何其他异常。
标签: c# asp.net-mvc web-services exception soap