首页 > 解决方案 > 关于如何通过 EWS 托管 API 创建日历组的一个棘手问题

问题描述

我一直在寻找一种解决方案,如何通过 EWS 托管 API 创建日历组 2 天,但是,我仍然无法弄清楚如何实现它,这很痛苦。在此先感谢您的帮助!

标签: ews-managed-api

解决方案


我尝试基于https://msdn.microsoft.com/en-us/library/ee217241(v=exchg.80).aspx创建一个日历组。但它很沮丧

public void CreateSharedGroup(Operator @operator, string folderName) { ExchangeService 服务 = ConnectToService(@operator.Account, @operator.UnionId);

        FolderView fvFolderView = new FolderView(1000);
        SearchFilter sfSearchFilter = new SearchFilter.IsEqualTo(FolderSchema.DisplayName, "Common Views");
        FindFoldersResults ffoldres = service.FindFolders(WellKnownFolderName.Root, sfSearchFilter, fvFolderView);

        ExtendedPropertyDefinition PidTagMessageClass = new ExtendedPropertyDefinition(0x001A, MapiPropertyType.String);

        ExtendedPropertyDefinition PidTagNormalizedSubject = new ExtendedPropertyDefinition(0x0E1D, MapiPropertyType.String);

        ExtendedPropertyDefinition PidTagWlinkGroupHeaderID = new ExtendedPropertyDefinition(0x6842, MapiPropertyType.CLSID);

        ExtendedPropertyDefinition PidTagWlinkSaveStamp = new ExtendedPropertyDefinition(0x6847, MapiPropertyType.Integer);

        ExtendedPropertyDefinition PidTagWlinkType = new ExtendedPropertyDefinition(0x6849, MapiPropertyType.Integer);

        ExtendedPropertyDefinition PidTagWlinkFlags = new ExtendedPropertyDefinition(0x684A, MapiPropertyType.Integer);

        ExtendedPropertyDefinition PidTagWlinkOrdinal = new ExtendedPropertyDefinition(0x684B, MapiPropertyType.Binary);

       ExtendedPropertyDefinition PidTagWlinkEntryId = new ExtendedPropertyDefinition(0x684C, MapiPropertyType.Binary);

        ExtendedPropertyDefinition PidTagWlinkRecordKey = new ExtendedPropertyDefinition(0x684D, MapiPropertyType.Binary);

        ExtendedPropertyDefinition PidTagWlinkStoreEntryId = new ExtendedPropertyDefinition(0x684E, MapiPropertyType.Binary);

        ExtendedPropertyDefinition PidTagWlinkFolderType = new ExtendedPropertyDefinition(0x684F, MapiPropertyType.String);

        ExtendedPropertyDefinition PidTagWlinkGroupClsid = new ExtendedPropertyDefinition(0x6850, MapiPropertyType.String);

        ExtendedPropertyDefinition PidTagWlinkGroupName = new ExtendedPropertyDefinition(0x6851, MapiPropertyType.String);

        ExtendedPropertyDefinition PidTagWlinkSection = new ExtendedPropertyDefinition(0x6852, MapiPropertyType.String);


        var objWunderBarLink = new Microsoft.Exchange.WebServices.Data.EmailMessage(service);
        objWunderBarLink.SetExtendedProperty(PidTagMessageClass, "IPM.Microsoft.WunderBar.Link");
        objWunderBarLink.SetExtendedProperty(PidTagNormalizedSubject, folderName);

        objWunderBarLink.SetExtendedProperty(PidTagWlinkGroupHeaderID, "5BA943D8DAAA462CA63E9136F65C8681");
        objWunderBarLink.SetExtendedProperty(PidTagWlinkSaveStamp, 0x12345678);
        objWunderBarLink.SetExtendedProperty(PidTagWlinkType, 0x00000004);
        objWunderBarLink.SetExtendedProperty(PidTagWlinkFlags, 0x00000000);
        objWunderBarLink.SetExtendedProperty(PidTagWlinkOrdinal, HexStringToByteArray("80"));

        objWunderBarLink.SetExtendedProperty(PidTagWlinkFolderType, "0278060000000000C000000000000048");
        objWunderBarLink.SetExtendedProperty(PidTagWlinkSection, 0x00000003);

        objWunderBarLink.IsAssociated = true;
        objWunderBarLink.Save(ffoldres.Folders[0].Id);

    }

推荐阅读