繰り返し(各Ui要素)を使って「現在の要素」をクリックしてウェブページの添付ファイルをダウンロードする処理を作っております。
その繰り返し中でファイルのフルパス情報を取得して変数に格納して繰り返し処理の外でダウンロードした全数のフルパスを取得したいのですが、繰り返し処理の中の変数では繰り返すたび変数が更新されてしまうので最後のフルパスしか取得できません。
どのような処理を入れれば全数フルパスを繰り返し処理の外で吐き出せるでしょうか?
こんにちは
基本的にはList<string>
型の変数を使うと良いかと思います。
ループの外でインスタンスを作成しておいて
ループ内で以下のアクティビティを使って項目を追加します。
ありがとうございます。
写真のフローでリストに追加のアクティビティで「リストに項目を追加: Object reference not set to an instance of an object.」のエラーが出てしまいます。
こちらのフローで繰り返しの中でダウンロードした添付ファイルを基に取得した変数「Key」と「attachmentId」と「ファイル名」を添付ファイルの数だけ以下の形にしたいと思っています
“attachments”: [
{
“id”: “変数「attachmentID」”,
“key”: “変数「Key」”,
“name”: “変数「添付ファイル名」”
“id”: “変数「attachmentID」”,
“key”: “変数「Key」”,
“name”: “変数「添付ファイル名」”
}
],
上記だけからでは何とも言えませんが、リストのインスタンスを生成していないのではないでしょうか?
こちらのフローで繰り返しの中でダウンロードした添付ファイルを基に取得した変数「Key」と「attachmentId」と「ファイル名」を添付ファイルの数だけ以下の形にしたいと思っています
この要件ならDictionaryを2つ用いた方が良いように思えます。
“attachments”: [
{
“id”: “変数「attachmentID」”,
“key”: “変数「Key」”,
“name”: “変数「添付ファイル名」”
“id”: “変数「attachmentID」”,
“key”: “変数「Key」”,
“name”: “変数「添付ファイル名」”
}
],
こちら意図が良くわかりませんが何になりますでしょうか?元データがJSONですか?
リストを作成をしたらこのエラーはなくなりました
すみません、構築力、知識が低くこちら具体的な例を挙げていただけないでしょうか?
jsonの形式に変換したいと考えてます
この形式はどこからかの指定でしょうか?かなり無駄が多い構造に見えます。
すみません、構築力、知識が低くこちら具体的な例を挙げていただけないでしょうか?
取り急ぎ「Key」と「AttachmentID」と「添付ファイル名」の関係を共有いただけますか?
どの項目がユニークか、あるいは1:1対応なのか、1:n対応なのか等になります
すみません、リストでの保存については問題解決しました。ありがとうございます。
出力について質問させていただきたいのですが、
現状だと「1行書き込み」で「String.Join(Environment.NewLine, リスト)」にて出力すると以下の形式で出力されるのですが
(id:1111111111111
key:22222222222
name:333333333.xlsx)で1つの項目にしてリストに追加しています。
id:1111111111111
key:22222222222
name:333333333.xlsx
id:4444444
key:55555555
name:6666666.xlsx
以下のようにリスト形式そのままで出力するにはどうすればよいでしょうか?
[
{
id: 111111111,
key:2222222,
name: 33333333.xlsx,
},
{
id: 4444444,
key:555555,
name: 66666.xlsx,
}
]
最終の出力が上記であるならDataTableとして情報を追加、最後にシリアライズすれば良いかと思います。(下記のAddDataRowをループの中に入れると良いかと思います)
Sample
Sample20240809-2.zip (2.9 KB)
かなり前の投稿への返信で恐縮です。
上記のやり方で想定した出力にはできました。ありがとうございます。
後だしで申し訳ないですが最終的には以下の形にしたいと考えてます。
{
“attachments”: [
{
“id”: “111111”,
“key”: “2222”,
“name”: “33333.xlsx”
},
{
“id”: “44444”,
“key”: “55555”,
“name”: “6666.xlsx”
},
]
}
これにするために添付の感じで作ってみたのですが
以下のように改行が上手く入らないような形になってしまいました。
どのようにすれば最終形のようにできるでしょうか?
{
“attachments”: “[\r\n {\r\n "id": "11111",\r\n "key": "2222",\r\n "name": "3333.xlsx"\r\n },\r\n {\r\n "id": "4444",\r\n "key": "555",\r\n "name": "6666.xlsx\”\r\n }\r\n]"
}
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.