2017-12-22 16 views
0

私はアプリケーションとしてグラフにログインしています。私のコンソールアプリケーションは共有メールボックスの電子メールを処理しています。処理が完了したら、メッセージを受信トレイから別のフォルダに移動したいと考えています。 このエラーが発生します。追加情報:コード:ErrorInvalidIdMalformed メッセージ:Idが不正です。C#.net graphclientを使用してメッセージを別のフォルダに移動する

しかし、私はメッセージを使用しました。すべての添付ファイルをダウンロードしてください。

IMessageAttachmentsCollectionPage attachments = await graphClient.Users[inbox].Messages[message.Id].Attachments.Request().GetAsync(); 

^- これが働いている

数行後に...

Message movedMsg = await graphClient.Users[inbox].Messages[message.Id].Move("01 Processed").Request().PostAsync(); 

^- これは、Idは上記の不正なエラーが発生している与えます。

誰にもアドバイスがありますか? ありがとうございました。 -Laurie

+0

中間変数とデバッガ –

+0

を使用し、それが最初の呼び出しであったように、はい、私はすべてのコードを強化している... message.Idは同じ値です。多分、問題を抱えているIdは "01 Processed"です。 githubで見た例ではフォルダ名を使用していたので、正しいはずです。 – Laurie996

+0

'01 'は有効なメールフォルダIDですか? [ここ](https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/mailfolder_move)は、「移動」操作の詳細です。 –

答えて

0
IUserMailFoldersCollectionPage allMailFolders = await graphClient.Users[inbox].MailFolders.Request().GetAsync(); 
     foreach(MailFolder folder in allMailFolders) 
     { 
      if (folder.DisplayName == "01 Processed") 
      { 
       processedFolder = folder.Id; 
      } 
      if (folder.DisplayName == "02 Needs Attention") 
      { 
       needsAttentionFolder = folder.Id; 
      } 
     } 

if (needsAttention) 
       { 
        needsAttentionCount++; 
        Message movedMsg = await graphClient.Users[inbox].Messages[message.Id].Move(needsAttentionFolder).Request().PostAsync(); 
       } 
       else 
       { 
        Message movedMsg = await graphClient.Users[inbox].Messages[message.Id].Move(processedFolder).Request().PostAsync(); 
       } 
+0

もっと簡単な方法があるはずです。 – Laurie996

関連する問題