【问题标题】:How to check if dt.AsEnumerable is Null before copying it UIPATH如何在复制之前检查 dt.AsEnumerable 是否为 Null UIPATH
【发布时间】:2021-03-23 07:02:57
【问题描述】:

我正在使用

dt1.AsEnumerable().Where(
    Function(row) Not dt2.AsEnumerable().Select(
        Function(r) r.Field(Of String)("Otsikko")
    ).Any(
        Function(x) x = row.Field(Of String)("Otsikko")
    )
).CopyToDataTable()

在 A 和 B 列都匹配之前,这非常有效。这会导致“CopyToDataTable()”没有可复制的内容并提供错误的情况。

如何添加 IF 以检查我要复制的项目是否为空。如果它不为空,我希望它复制数据表,如果它是查询应该向前移动。

我是这一切的新手!因此,我们将不胜感激。

提前谢谢你。

拉里

【问题讨论】:

    标签: linq if-statement uipath uipath-studio


    【解决方案1】:

    假设我已经正确理解了这个问题,您已经运行了下面的查询,该查询运行良好,但结果为空。然后这会失败,因为 .CopyToDataTable() 没有可复制的内容。

    dt1.AsEnumerable().Where(
        Function(row) Not dt2.AsEnumerable().Select(
            Function(r) r.Field(Of String)("Otsikko")
        ).Any(
            Function(x) x = row.Field(Of String)("Otsikko")
        )
    ).CopyToDataTable()
    

    一个解决方案是使用decision或if语句和下面的代码,如果里面有数据,这将返回true,然后你可以使用上面的代码来提取它,如果它返回false,你可以处理这不会引发错误

    dt1.AsEnumerable().Where(
        Function(row) Not dt2.AsEnumerable().Select(
            Function(r) r.Field(Of String)("Otsikko")
        ).Any(
            Function(x) x = row.Field(Of String)("Otsikko")
        )
    ).Any()
    

    【讨论】:

    • 谢谢先生。你是天使!
    • 这对你有用吗?它是否解决了您面临的问题?如果是这样,请您标记/接受作为答案。
    猜你喜欢
    • 1970-01-01
    • 2010-10-09
    • 1970-01-01
    • 2014-03-24
    • 1970-01-01
    • 2012-05-05
    • 2015-04-19
    • 2014-01-04
    • 2010-10-07
    相关资源
    最近更新 更多