gpt4 book ai didi

mysql - 有没有办法查询一个类是否包含具有某个已知名称的实例变量?

转载 作者:行者123 更新时间:2023-11-29 06:40:17 25 4
gpt4 key购买 nike

当拦截来自 MySql 的错误时,事先不知道传递给我的错误类的内容是什么。所以我编码:

.catchError((firstError) {
sqlMessage = firstError.message;
try {
sqlError = firstError.osError;
} catch (noInstanceError){
sqlError = firstError.sqlState;
}
});

在这种特定情况下,我想知道 e 是否包含实例变量 osErrorsqlState,因为它们中的任何一个都包含特定的错误代码。更一般地说(为了提高我的知识)是否可以编写类似 if (firstError.instanceExists(osError)) ... 的内容,以及如何编写?

最佳答案

这应该做你想做的:

import 'dart:mirrors';

...

// info about the class declaration
reflect(firstError).type.declarations.containsKey(#osError);

// info about the current instance
var m = reflect(firstError).type.instanceMembers[#osError];
var hasOsError = m != null && m.isGetter;

关于mysql - 有没有办法查询一个类是否包含具有某个已知名称的实例变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21974178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com