我有一个将 SAP 与 RFC 调用连接起来的应用程序,我需要在尝试与 SAP 建立 RFC 调用时连接失败时向用户显示通知。我收到以下异常。
{
SAP.Middleware.Connector.RfcCommunicationException:
LOCATION CPIC (TCP/IP) on local host with Unicode
ERROR partner '151.9.39.8:8010' not reached
TIME Wed Jul 16 10:32:05 2014
RELEASE 720
COMPONENT NI (network interface)
VERSION 40
RC -10
MODULE nixxi.cpp
LINE 3286
DETAIL NiPConnect2: 151.9.39.8:8010
SYSTEM CALL connect
ERRNO 10060
ERRNO TEXT WSAETIMEDOUT: Connection timed out
COUNTER 2
}
并且通过使用此异常我需要通知用户。但是我如何确定它是否是 SAP.Middleware.Connector.RfcCommunicationException
因为我也在处理其他异常。有什么方法可以在不连接上述异常字符串的情况下获取异常的类型。
在我的 try catch block 中 我目前正在这样做,但它不起作用。
catch (Exception ex)
{
if (ex.ToString().ToLower() == "rfccommunicationexception")
{
MessageError = "RFC error";
}
}
最佳答案
显式捕获异常:
catch(SAP.Middleware.Connector.RfcCommunicationException)
{
// RFC exception
}
catch(Exception e)
{
// All other exceptions
}
关于c# - 从异常中获取异常类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24772736/