2008-11-06 8 views
2

J'essaie de configurer un système qui affiche les éléments de calendrier d'un calendrier de ressources sur une page Web à l'aide d'Exchange 2007 et d'EWS (Exchange Web Services). J'ai réussi à obtenir l'accès aux calendriers des ressources, mais lors de l'obtention des éléments dans les calendriers, le sujet de chaque élément de calendrier n'est pas l'objet d'origine utilisé lorsque quelqu'un a créé la demande de réunion et invité la ressource, mais plutôt le nom d'utilisateur sur le compte qui a créé la demande de réunion par exemple. si je fais quelque chose comme:Accéder à l'objet original de la réunion dans le calendrier des ressources

List<CalendarItemType> items = 
    Calendar.GetCalendarItems("[email protected]", 
           Calendar.GetNextWeekView(), 
           binding); 
if (items.Count > 0) 
{ 
    Console.WriteLine(string.Format("Calendar opened - fetched {0} items", 
            items.Count)); 
    Console.WriteLine("==================================="); 
    foreach (var item in items) 
    { 
     Console.WriteLine(); 
     Console.WriteLine(item.Subject); 
     Console.WriteLine("----------------------------------------"); 
     Console.WriteLine("\tOrganizer: " + item.Organizer.Item.Name); 
     Console.WriteLine(); 
     Console.WriteLine("\tStart:  " + item.Start.ToString("dd-MM-yyyy HH:mm")); 
     Console.WriteLine("\tSlut:  " + item.Start.ToString("dd-MM-yyyy HH:mm")); 
    } 
} 

Où Calendar.GetCalendarItems, est une méthode qui va chercher les éléments de calendrier de la ressource désignée par le premier argument, le Calendar.GetNextWeekView() est une méthode statique qui crée une calendarview couvrant la semaine suivante à compter de la date d'aujourd'hui, et la liaison est configurée pour utiliser un compte avec un accès délégué à la boîte aux lettres de ressources.

Le item.Subject apparaît en tant qu'administrateur si le compte Administrateur a été utilisé pour réserver la ressource.

Est-ce que quelqu'un sait comment y remédier - dois-je faire une sorte d'accès à la propriété spéciale, ou aller chercher un autre type d'objet ou quoi?

Cordialement Jesper Hauge

+0

Figured celui-ci moi-même voir la réponse ci-dessous – Hauge

Répondre

2

Figured this one out - quand je commencé à regarder en dehors du code. La réponse réside dans la configuration des ressources plutôt que dans le code d'accès.

Si vous souhaitez que le sujet de la réunion reflète le sujet d'origine. Assurez-vous que la ressource a défini les propriétés de paramètre DeleteSubject et AddOrganizerToSubject sur false. Il peut être réalisé avec la commande shell suivante:

Set-MailboxCalendarSettings resourcename -DeleteSubject 0 -AddOrganizerToSubject 0 

Cordialement Jesper Hauge

Questions connexes