public static OfflineAddressBookMapiProperty Parse(string s) { OfflineAddressBookMapiPropertyOption offlineAddressBookMapiPropertyOption = OfflineAddressBookMapiPropertyOption.Value; if (string.IsNullOrEmpty(s)) { throw new ArgumentNullException(); } string[] array = s.Split(new char[] { ',' }); if (array.Length != 2) { throw new FormatException(DirectoryStrings.InvalidOABMapiPropertyParseStringException(s)); } string text = array[0].Trim(); string text2 = array[1].Trim(); try { offlineAddressBookMapiPropertyOption = (OfflineAddressBookMapiPropertyOption)Enum.Parse(typeof(OfflineAddressBookMapiPropertyOption), text2, true); } catch (ArgumentException) { throw new ArgumentException(DirectoryStrings.InvalidOABMapiPropertyTypeException(text2)); } return(new OfflineAddressBookMapiProperty(0U, text, offlineAddressBookMapiPropertyOption)); }
internal static OfflineAddressBookMapiProperty ParseSerializationString(string fullString) { string[] array = fullString.Split(new char[] { ',' }); if (array.Length != 3) { throw new FormatException(DirectoryStrings.InvalidOABMapiPropertyParseStringException(fullString)); } string text = array[0].Trim(); uint num = uint.Parse(array[1].Trim()); OfflineAddressBookMapiPropertyOption offlineAddressBookMapiPropertyOption = (OfflineAddressBookMapiPropertyOption)Enum.Parse(typeof(OfflineAddressBookMapiPropertyOption), array[2].Trim()); return(new OfflineAddressBookMapiProperty(num, text, offlineAddressBookMapiPropertyOption)); }
public OfflineAddressBookMapiProperty(uint mapiPropTag, string mapiPropName, OfflineAddressBookMapiPropertyOption option) { this.mapiPropTag = mapiPropTag; this.mapiPropName = mapiPropName; this.option = option; }
public static OfflineAddressBookMapiProperty GetOABMapiProperty(uint mapiPropTag, OfflineAddressBookMapiPropertyOption option) { string value = string.Empty; if (Enum.IsDefined(typeof(PropTag), mapiPropTag)) { value = ((PropTag)mapiPropTag).ToString(); } if (string.IsNullOrEmpty(value) && Enum.IsDefined(typeof(CustomPropTag), mapiPropTag)) { value = ((CustomPropTag)mapiPropTag).ToString(); } int key = OfflineAddressBookMapiProperty.MapiIdFromPropTag(mapiPropTag); if (string.IsNullOrEmpty(value)) { OfflineAddressBookMapiProperty.ReadSchema(); if (OfflineAddressBookMapiProperty.mapiIdToSchemaAttr.ContainsKey(key)) { ADSchemaAttributeObject adschemaAttributeObject = OfflineAddressBookMapiProperty.mapiIdToSchemaAttr[key]; value = adschemaAttributeObject.LdapDisplayName; } } if (string.IsNullOrEmpty(value)) { value = string.Format("0x{0:x8}", mapiPropTag); } return(new OfflineAddressBookMapiProperty(mapiPropTag, value, option)); }