2010-11-19 24 views
6

Tôi đang cố gắng chơi với Exchange để tích hợp hệ thống đặt phòng với nó.Dịch vụ web trao đổi - Tạo cuộc hẹn với tài nguyên nhưng người tham dự không thể xem tài nguyên

Tôi đã tạo hộp thư phòng và đã đặt hộp thư để hộp thư tự động chấp nhận yêu cầu cuộc hẹn.

Khi tạo cuộc hẹn với tư cách người dùng chuẩn, tôi có thể thêm phòng làm tài nguyên và tính khả dụng của phòng sẽ hiển thị. Nếu tôi đặt nó thì nó sẽ thành công.

Tôi đã tạo cuộc hẹn qua Dịch vụ web Exchange với phòng làm tài nguyên. Tài nguyên đã được đặt thành công (như được xác nhận khi mở nó làm đại biểu của phòng) nhưng nó không xuất hiện trong cuộc họp như được xem bởi bất kỳ người tham dự nào.

 var service = new ExchangeService(ExchangeVersion.Exchange2007_SP1) { 
      Credentials = 
       new NetworkCredential("username", "password", "domain"), 
      Url = new Uri("https://myexchangeserver.co.uk/EWS/Exchange.asmx") 
     }; 

     var appointment = new Appointment(service) 
           { 
            Subject = "Created by ExchangeTest app", 
            Body = "Some body text....", 
            Start = startTime, 
            End = endTime 
           }; 
     appointment.RequiredAttendees.Add("[email protected]"); 
     appointment.Resources.Add("[email protected]"); 
     appointment.Save(SendInvitationsMode.SendOnlyToAll); 

Bất kỳ ý tưởng nào về lý do tại sao nó không hiển thị nếu tôi đặt nó theo cách thủ công?

Lưu ý rằng tôi không thực sự có thể xem lịch cho phòng này với tư cách là bất kỳ người dùng nào khác ngoài một người đại diện cho nó; nó nói rằng thư mục không thể được tìm thấy.

Trả lời

0

Có thể bạn có thể thử tạo cuộc họp theo cách thủ công và sau đó liên kết với cuộc họp đó. Làm như vậy bạn sẽ có thể duyệt qua đối tượng và kiểm tra xem sự khác biệt với đối tượng của bạn là gì?

var appointment = Appointment.Bind(service, new ItemId("yourmeetingid")); 
1

Tôi không hoàn toàn chắc chắn về vấn đề chính của bạn.

Lưu ý về mặt phụ:

Bạn đã thử tìm kiếm các cuộc hẹn chưa?

FolderId folder = new FolderId(WellknownFolderName.Calendar,"[email protected]"); 
CalendarView calendarView = new CalendarView(startDate, endDate); 

foreach (Appointment exchangeAppointment in service.FindAppointments(folder, calendarView)) 
{ 
    // Here you should be able to get access on the appointments at the specified folder & address 
} 
Các vấn đề liên quan