2016-06-29 17 views
5

私は予定のスケジューリングのための簡単なアプリケーションを作成しており、ユーザーの予定を作成する機能を実装したいと考えています。偽装なしの他のユーザー(EWS)としてExchangeサーバーの予定表に予定を作成する

私は、更新を作成して、Exchange Server上のカレンダーを削除するには、管理、およびIはややそうのようなRequiredAttendeesとして私の同僚を追加する予定を作成するために管理:

//service variable is being created using my credidentals 
Appointment meeting = new Appointment(service); 
meeting.Subject = "Some subject "; 
meeting.Body = "Some body."; 
meeting.Start = DateTime.Now; 
meeting.End = meeting.Start.AddHours(4); 
meeting.Location = "Some Location"; 
meeting.RequiredAttendees.Add("[email protected]"); 

meeting.ReminderMinutesBeforeStart = 60; 
meeting.Save(new FolderId(WellKnownFolderName.Calendar, 
    "[email protected]"), 
    SendInvitationsMode.SendToAllAndSaveCopy); 

をしかし、それだけで必要な出席者として彼を設定しています。次のことは偽装を試してみましたが、私は自分自身をマスターとして設定するためにホスティングサーバーにアクセスできず、他のユーザーはカレンダーを共有しなければなりません(パーミッションやもののため)。また、彼は自分のカレンダーで彼の出版の著者になるように私を設定しました。 MSDNサイトで見つからない、または見つからないようなものがありますか?

編集:私はoutlokの彼のカレンダーで予定を作成することができます。

答えて

5

私がここで行ったように、誰もが同じ問題に遭遇した場合は次の手順に従ってください。

  1. あなたは予定を作成しているため、人が編集する「として(Exchangeサーバー上またはoutlokであなたを設定していることを確認してくださいすべての権限を持つ著者」。

  2. あなたが彼のために予定を作成することができた後は、(あなたのoutlokに行くといくつかのテスト予定を作成することによってこれを確認)。

このコードは、私の作品:https://technet.microsoft.com/de-de/library:

Folder inboxFolder = Folder.Bind(service, new FolderId(WellKnownFolderName.Calendar, "[email protected]")); 
Appointment appointmentOther = new Appointment(service); 
appointmentOther.Subject = "Test 2"; 
appointmentOther.Body = "Body text"; 
appointmentOther.Start = DateTime.Now; 
appointmentOther.End = DateTime.Today.AddHours(16); 
appointmentOther.Location = "My Office"; 
appointmentOther.IsReminderSet = true; 
appointmentOther.ReminderMinutesBeforeStart = 30; 
appointmentOther.Save(inboxFolder.Id,SendInvitationsMode.SendToNone); 

幸運:)

+1

"編集著者は、" MSのサイトによると存在しません。 /ff522363(v=exchg.160).aspx - しかし、解決策は機能します! +1 –

+0

@ A Bundyええと、ある時点で、私はインターネットのどこかにいくつかのバージョンのドキュメンテーションがあることを知りましたが、何とか解決策を見つけることができました。私はそれが助けてうれしいです:) – Kadaj

関連する問題