我想在我的Dart Server应用程序中获取由sqlJocky提供给我的行数据,并将其(使用列名称)转换为Map.IE浏览器.row ['email'] =="somename".
行数据是"_BinaryDataPacket",它是Row类型的扩展.现在,sqlJocky开发人员建议访问数据的方法涉及了解您在数据库中访问的内容的列名:
row.email == "somename"
Run Code Online (Sandbox Code Playgroud)
或者只是忽略列名:
row[0] == "somename"
Run Code Online (Sandbox Code Playgroud)
我已经尝试了一些黑客来获取列数据,甚至编辑了原始的sqlJockey代码以获取_BinaryDataPacket._fieldIndex以使其公开.虽然这确实让我可以访问Column标题的Symbol实例来构建地图,但我希望尽可能避免修改开发人员的稳定代码.我假设必须有一种简单的方法来获取列名称并将它们放在带有行数据的Map中.
TLDR:我想将alpha.brava =="charle"转换为alpha ["bravo"] =="charle".
谢谢
在结果中,您有一个字段列表属性.
所以你可以这样做:
.then((Results results) {
results.forEach((Row row) {
Map r = new Map();
for(int i=0; i<results.fields.length; i++) {
r[results.fields[i].name] = row[i];
}
});
});
Run Code Online (Sandbox Code Playgroud)
这会将数据从一行映射到地图
| 归档时间: |
|
| 查看次数: |
193 次 |
| 最近记录: |