こんばんは。
UiPath Studio 2024.4.0 Community editionのユーザです。
Build DataTableアクティビティで列を編集ウィンドウを開くと、列ごとにデータ型が設定できるようになっています。
しかし、DataTableの列のデータはすべてObject型ではないでしょうか?
私を含むプログラマはその前提でコードを書いています。
どうして、String型や他のデータ型も設定できるようになっているのでしょうか?
こんばんは。
UiPath Studio 2024.4.0 Community editionのユーザです。
Build DataTableアクティビティで列を編集ウィンドウを開くと、列ごとにデータ型が設定できるようになっています。
しかし、DataTableの列のデータはすべてObject型ではないでしょうか?
私を含むプログラマはその前提でコードを書いています。
どうして、String型や他のデータ型も設定できるようになっているのでしょうか?
列の型定義としては違います。例えばCSV読み込みアクティビティが出力する列はString型の列となっています。個々のデータを取り出すときはObject型として扱いますが、中身はこの列の型定義に基づいた型情報を持っています。
segregation helps in writing correct data also in correct format…the data can be used by the column definition …else first we might need to check the type as well and then cast
cheers
さすがUiPath、難解な仕様ですね…
列の型定義をするときに、一律列の型をObject型で定義すると何か問題が発生しますか?
これはUiPath固有の仕様ではなく、.net framework/ .Net Coreの仕様です。
列の型定義をするときに、一律列の型をObject型で定義すると何か問題が発生しますか?
基本的な考え方はすべての変数をObject型として定義しないことと類似しているかと思います。
また型が固定化されていないと例えばDataColumn.Expressionメソッドでの演算でエラーや予期せぬ結果を招くこと等もあるかもしれません。
後続でそれを前提としたロジックで処理するのであればObject型でも問題ないと思います。
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.