Я использую управляемый API EWS для загрузки встреч для определенного ресурса комнаты и публикации его через WCF, который будет потребляться планшетным устройством.EWS Нет ресурсов в Appointment.Resources после Appointment.Bind
Я хочу отменить бронирование конференц-зала, если организатор не выполнит конкретные действия после 15 минут, которые планируется начать.
Поскольку планшетное устройство имеет только свойство StoreID идентифицировать событие из, я осуществил следующий код:
public bool CancelMeeting(string appointmentId, string roomEmail)
{
try
{
var service = GetExchangeService();
var ai = new AlternateId[1];
ai[0] = new AlternateId();
ai[0].UniqueId = appointmentId;
ai[0].Format = IdFormat.HexEntryId;
ai[0].Mailbox = roomEmail;
ServiceResponseCollection<ConvertIdResponse> cvtresp = service.ConvertIds(ai, IdFormat.EwsId);
var appointment = Appointment.Bind(service, ((AlternateId)cvtresp[0].ConvertedId).UniqueId);
if (appointment.Resources.Count != 0)
appointment.Resources.RemoveAt(0);
appointment.Location = string.Empty;
appointment.Save(SendInvitationsMode.SendOnlyToAll);
return true;
}
catch (Exception ex)
{
return false;
}
}
Однако
if (appointment.Resources.Count != 0)
appointment.Resources.RemoveAt(0);
в этом коде appointment.Resources.Count является всегда 0. В соответствии с этим сообщением (Can't Retrieve Resources (rooms) from Exchange Web Services) вам нужно указать EWS, чтобы конкретно включить Ресурсы. Как вы указываете, чтобы включать ресурсы при использовании Appointment.Bind?
Назначение возвращается (как и код, который я разместил в исходном сообщении) и перечисление ресурсов по-прежнему заявляет: «Перечисление не дало никаких результатов» – grimstoner
Я также пробовал (как предлагается в этом сообщении: http: // stackoverflow. com/questions/8904741/finditems-and-bindtoitems-give-inconsistent-results-for-emailmessage-sender): service.LoadPropertiesForItems (новый список {назначение}, includeResources); –
grimstoner
Какую версию Exchange Server вы используете, и какую версию вы указываете при создании объекта ExchangeService? –