【发布时间】:2014-12-04 13:30:13
【问题描述】:
try
{
results = this.exchangeService.GetUserAvailability(attendees, new TimeWindow(startTime, endTime), AvailabilityData.FreeBusy);
}
catch (Exception ex)
{
string attendeesString = string.Empty;
foreach (AttendeeInfo item in attendees)
{
attendeesString += item.SmtpAddress + "; ";
}
LogData logData = MethodLogUtilityForExchange.GetLogDataGetAttendeesAvailabilityDebug(attendeesString, startTime, endTime, ex);
LogUtility.LogException(logData, "EWS GetAttendeesAvailability Exception", ex, LogCategory.MethodInformation);
throw;
}
异常堆栈跟踪:
ExceptionSystem.ArgumentException: 已添加具有相同键的项。
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
在 Microsoft.Exchange.WebServices.Data.ExchangeServiceBase.SaveHttpResponseHeaders(WebHeaderCollection 标头)
在 Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.ReadResponse(HttpWebResponse 响应)
在 Microsoft.Exchange.WebServices.Data.GetUserAvailabilityRequest.Execute()
在 Microsoft.Exchange.WebServices.Data.ExchangeService.GetUserAvailability(IEnumerable`1 参加者,TimeWindow timeWindow,AvailabilityData requestedData)
在 Intel.Exchange.WebServices.Extension.ExchangeServiceManager.GetAttendeesAvailability(List`1 参加者,DateTime startTime,DateTime endTime)
你能帮助理解这个问题吗?我们在这里没有明确处理任何字典。但我们仍然看到 Dictionary 键错误。不知道出了什么问题。
【问题讨论】:
标签: multithreading thread-safety exchangewebservices argumentexception