Exemple #1
0
        public ExSearchResultEntry Clone(string distinguishedName)
        {
            DirectoryAttributeCollection directoryAttributeCollection = new DirectoryAttributeCollection();

            foreach (KeyValuePair <string, DirectoryAttribute> keyValuePair in this.attributes)
            {
                DirectoryAttribute value = keyValuePair.Value;
                DirectoryAttribute directoryAttribute = new DirectoryAttribute();
                directoryAttribute.Name = value.Name;
                foreach (object obj in value)
                {
                    if (obj is byte[])
                    {
                        byte[] array = new byte[((byte[])obj).Length];
                        Buffer.BlockCopy((byte[])obj, 0, array, 0, array.Length);
                        directoryAttribute.Add(array);
                    }
                    else if (obj is string)
                    {
                        string value2 = string.Copy((string)obj);
                        directoryAttribute.Add(value2);
                    }
                    else
                    {
                        if (!(obj is Uri))
                        {
                            throw new NotSupportedException("Type " + obj.GetType() + " is not supported");
                        }
                        Uri value3 = new Uri(((Uri)obj).OriginalString);
                        directoryAttribute.Add(value3);
                    }
                }
                directoryAttributeCollection.Add(directoryAttribute);
            }
            return(new ExSearchResultEntry(distinguishedName, directoryAttributeCollection));
        }
Exemple #2
0
        public void Add_NullAttribute_ThrowsArgumentException()
        {
            var collection = new DirectoryAttributeCollection();

            Assert.Throws <ArgumentException>(null, () => collection.Add(null));
        }