Exemple #1
0
        public static void DeleteLocalAddressRange(int rangeId)
        {
            CheckAccess();

            using (DbTransaction tran = DbTransaction.Begin())
            {
                DbActiveDirectory.LocalAddressRangeDelete(rangeId);
                tran.Commit();
            }
        }
Exemple #2
0
        public static void UpdateLocalAddressRanges(DataTable items)
        {
            CheckAccess();

            ArrayList oldItems = GetLocalAddressesList();

            ArrayList add = new ArrayList();
            ArrayList del = new ArrayList();

            foreach (DataRow row in items.Rows)
            {
                IPAddressRange item = new IPAddressRange((string)row["StartAddress"], (string)row["EndAddress"]);
                if (oldItems.Contains(item))
                {
                    oldItems.Remove(item);
                }
                else
                {
                    add.Add(item);
                }
            }

            del.AddRange(oldItems);

            using (DbTransaction tran = DbTransaction.Begin())
            {
                foreach (IPAddressRange range in add)
                {
                    DbActiveDirectory.LocalAddressRangeAdd(range.StartAddress.ToString(), range.EndAddress.ToString());
                }

                foreach (IPAddressRange range in del)
                {
                    DbActiveDirectory.LocalAddressRangeDelete(range.ID);
                }

                tran.Commit();
            }
        }