("Status")列が "〇"であるものをという条件を追加したい

こんにちは
UiPath Studio 2022.4.3EnterPrise Editionユーザです。

dt_1の (“Date”)列を抽出して重複を排除してString配列arr_1に変換する構文は下記であることは検証済みです。

arr_1=dt_1.AsEnumerable.Select(Function(x) x("Date").ToString).Distinct.ToArray

これに、(“Status”)列が "〇"であるものをという条件を追加したいのですが、構文はどうなりますでしょうか。

ちなみに下記では静的エラーになり、ダメでした。

arr_1=dt_1.AsEnumerable.Select(Function(x) x("Date").ToString.Where(Function(x) x("Status").ToString = "〇").Distinct.ToArray

上記ではそもそもかっこの数があっていません。

以下お試しください。

arr_1=dt_1.AsEnumerable.Where(Function(x) x("Status").ToString = "〇").Select(Function(x) x("Date").ToString).Distinct.ToArray

2つ質問をさせてください。

1.経験的に、Where文は必ず先頭にくるという認識ですが、合っていますでしょうか?
2.1.の回答がYESと仮定して、Where文が先頭に来ると、後続のSelect文やGroupBy文に順序の決まりはないという認識ですが、合っていますか?

あっていないです。Enumerable.Whereメソッドはフィルター処理になりますので、それが必要なところで使用します。

1 Like