2

我正在尝试设置一个系统,该系统使用 Exchange 2007 和 EWS(Exchange Web 服务)在网页上显示资源日历中的日历项目。

我已经设法访问资源的日历,但是在获取日历中的项目时,每个日历项目的主题不是有人创建会议请求并邀请资源时使用的原始主题,而是用户名在创建会议请求的帐户上,例如。如果我做类似的事情:

List<CalendarItemType> items = 
    Calendar.GetCalendarItems("mr1@litwareinc.com", 
                              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"));
    }
}

其中 Calendar.GetCalendarItems 是一个获取第一个参数表示的资源的日历项的方法,Calendar.GetNextWeekView() 是一个静态方法,它创建一个从今天开始跨越下一周的 CalendarView,并设置了绑定使用对资源邮箱具有委托访问权限的帐户。

如果使用item.Subject管理员帐户预订资源,则显示为管理员。

有谁知道如何解决这个问题 - 我是否需要进行某种特殊的财产访问,或者获取另一种类型的物品或什么?

问候杰斯珀豪格

4

1 回答 1

2

想通了这个 - 当我开始在代码之外寻找时。

答案在于资源配置而不是访问代码。

如果您想让会议的主题反映原始主题。确保资源已将设置属性设置DeleteSubjectAddOrganizerToSubjectfalse。可以使用以下 shell 命令来实现:

Set-MailboxCalendarSettings resourcename -DeleteSubject 0 -AddOrganizerToSubject 0

问候杰斯珀豪格

于 2008-11-06T11:06:45.617 回答