gpt4 book ai didi

performance - 访问控件值的最有效方法是什么?

转载 作者:行者123 更新时间:2023-12-04 13:08:24 25 4
gpt4 key购买 nike

在我必须访问最有效的控件值的两个选择中?

getComponent("ControlName").getValue();


dataSource.getItemValue("FieldName");

我发现有时 getComponent似乎没有返回当前值,而是访问了 dataSource似乎更可靠。那么从性能的角度来看,使用哪一个有很大不同吗?

dataSource.getValue 似乎在我尝试过的任何地方都有效。但是,在使用 rowData 时,我似乎仍然需要执行 rowData.getColumnValue("Something")。 rowData.getValue("Something") 失败。

最佳答案

两者都不。最快的语法是 dataSource.getValue ("FieldName") . getItemValue方法只对文档数据源可靠,而getValue方法不仅可用于通过 View 数据源访问的 View 条目(尽管在该上下文中您将向它传递 View 列的编程名称,该名称不一定与字段名称相同),而且还可用于您开发或安装的任何自定义数据源(例如第三方扩展库)。此外,如果您使用 getItemValue,它会自动进行类型转换,而您必须自己进行类型转换。反而。

即使在非常简单的页面上,dataSource.getValue ("FieldName")getComponent ("id").getValue () 的 5 倍,因为正如 Fredrik 提到的,首先它必须是 查找 组件,然后询问它的值是什么......在幕后,它只是询问数据源。因此,自己询问数据源总是更快。

注意 : 对应的写法是dataSource.setValue ("FieldName", "NewValue") ,不是 dataSource.replaceItemValue ("FieldName", "NewValue") .两者都可以,但是 setValue也进行与 getValue 相同的类型转换确实如此,因此您可以将不严格符合旧 Domino Java API 的数据传递给它,并且它通常只是确定需要将值转换为什么,以便 Domino 存储“安全”。

关于performance - 访问控件值的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18303862/

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