1: static void Main(string[] args)
2: {
3: ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;
4:
5: const string id = "040000008200E00074C5B7101A82E008000000007069352667BBC9010000000000000000100000000C74ABD802575A41BC09B0E12352657B";
6:
7: string bufferString = GetObjectIdStringFromUid(id);
8:
9: var service = new ExchangeServiceBinding
10: {
11: Url = "https://w2k3x64/ews/exchange.asmx",
12: Credentials = new NetworkCredential("bob", "Password!", "contoso"),
13: RequestServerVersionValue = new RequestServerVersion { Version = ExchangeVersionType.Exchange2007_SP1}
14: };
15:
16: var response = service.FindItem(new FindItemType
17: {
18: ParentFolderIds = new[] { new DistinguishedFolderIdType { Id = DistinguishedFolderIdNameType.calendar } },
19: ItemShape = new ItemResponseShapeType
20: {
21: BaseShape = DefaultShapeNamesType.AllProperties,
22: },
23: Restriction = new RestrictionType {
24: Item = new IsEqualToType
25: {
26: Item = new PathToExtendedFieldType
27: {
28: DistinguishedPropertySetId = DistinguishedPropertySetType.Meeting,
29: DistinguishedPropertySetIdSpecified = true,
30: PropertyId = 0x03,
31: PropertyIdSpecified = true,
32: PropertyType = MapiPropertyTypeType.Binary
33: },
34: FieldURIOrConstant = new FieldURIOrConstantType
35: {
36: Item = new ConstantValueType
37: {
38: Value = bufferString
39: }
40: }
41: }
42: }
43: });
44: var messageType = ((FindItemResponseMessageType) response.ResponseMessages.Items[0]);
45: Console.Out.WriteLine("messageType.ResponseClass = {0}", messageType.ResponseClass);
46:
47: if (messageType.ResponseClass != ResponseClassType.Success)
48: {
49: Console.Out.WriteLine(messageType.MessageText);
50: return;
51: }
52: var returnedItems = messageType.RootFolder.Item as ArrayOfRealItemsType;
53:
54: if (returnedItems == null || returnedItems.Items == null)
55: {
56: Console.Out.WriteLine("Nothing found.");
57: return;
58: }
59:
60: foreach (CalendarItemType item in returnedItems.Items)
61: {
62: Console.Out.WriteLine("item.Subject = {0}", item.Subject);
63: Console.Out.WriteLine("item.UID = {0}", item.UID);
64: }
65: Console.ReadLine();
66: }