【问题标题】:How to make the remove of rows from datatable more efficiant in Uipath如何在 Uipath 中更有效地从数据表中删除行
【发布时间】:2021-11-02 13:08:25
【问题描述】:

您好,我有一个数据表,它由一个文本文件提供,该文本文件具有我已经拥有的文件名。 (数据表文件)

我还有一个包含所有文件名的数据表。(DatatableValue)

我想从 DatatableValue 中删除 DatatableFile 中存在的文件名,以便进行下一步。

我已经这样做了,但是它太慢了。

而且我发现的所有示例都非常庞大和复杂。我认为有一种比我发现的更简单的解决方案,而且比我的更快。

我的解决方案迭代 datatableFile 中的所有结果 datatableValue 中的每一行,这只会变得越来越大。 当有匹配时,它会获取该行号并将其保存在一个数组中以供以后处理。

在检查了这两个表之后,它开始清除它已经拥有的文件。

【问题讨论】:

    标签: optimization datatable uipath


    【解决方案1】:

    这可以使用 LINQ 语句和操作数据表来实现。

    首先让我们获取您已经拥有的文件的列表,这可以通过分配来完成。

    lstStrCurrentFiles = DatatableFile.AsEnumerable().Select(Function (r) r(0).ToString).ToList()

    现在让我们从您拥有的所有文件的数据表中排除那些,这可以再次使用分配来完成。

    DatatableValue = DatatableValue.AsEnumerable.Where(Function (dr) not lstStrCurrentFiles.Contains(dr(1).ToString)).CopyToDataTable

    这为您提供以下序列

    【讨论】:

    • 我现在做了,效果很好。我非常感谢你的帮助
    • 太棒了,在过去的几年里,我发现使用 LINQ 通常比使用循环来操作 DataTables 更有效。很高兴它对你有用。
    猜你喜欢
    • 2018-08-29
    • 2019-11-05
    • 2021-11-01
    • 1970-01-01
    • 2020-02-05
    • 2021-06-18
    • 2020-04-21
    • 2021-10-13
    • 2015-10-30
    相关资源
    最近更新 更多