internal static void AddSuggestedValueXmlFromADSuggestedValueEntryList(ADSuggestedValueEntry[] claimValues, ADEntity directoryObj, ADClaimValueType valueType) { if (valueType != ADClaimValueType.Invalid) { HashSet <string> strs = new HashSet <string>(StringComparer.OrdinalIgnoreCase); ADSuggestedValueEntry[] aDSuggestedValueEntryArray = claimValues; int num = 0; while (num < (int)aDSuggestedValueEntryArray.Length) { ADSuggestedValueEntry aDSuggestedValueEntry = aDSuggestedValueEntryArray[num]; if (!strs.Contains(aDSuggestedValueEntry.Value.ToString())) { strs.Add(aDSuggestedValueEntry.Value.ToString()); num++; } else { object[] str = new object[1]; str[0] = aDSuggestedValueEntry.Value.ToString(); throw new ADException(string.Format(CultureInfo.CurrentCulture, StringResources.SuggestedValueNotUniqueError, str)); } } string suggestedValueXmlFromSuggestedValueEntryList = ADCBACUtil.GetSuggestedValueXmlFromSuggestedValueEntryList(claimValues, ADCBACUtil.GetsuggestedValueTypeFromClaimType(valueType)); directoryObj["msDS-ClaimPossibleValues"].Value = suggestedValueXmlFromSuggestedValueEntryList; return; } else { throw new ADException(StringResources.InvalidValueTypeForPossibleValueXml); } }