当从 MySql 拦截错误时,事先不知道传递给我的错误类的内容是什么。所以我编码:
.catchError((firstError) {
sqlMessage = firstError.message;
try {
sqlError = firstError.osError;
} catch (noInstanceError){
sqlError = firstError.sqlState;
}
});
在这种特定情况下,我想知道 e 是否包含实例变量osError
或sqlState
,因为它们中的任何一个都包含特定的错误代码。更一般地说(以提高我的知识)是否有可能写出类似的东西if (firstError.instanceExists(osError)) ...
,以及如何写?