public void TreeTestLazy() { var root = new RegDataLazy() { _name = regroot }; root.Fillit(); // Assert.IsTrue(RegData._cnt > 350, "count = {0}", RegData._cnt); var zz = (RegDataLazy)Activator.CreateInstance(root.GetType()); using (var mfd = new MapFileDict <int, RegDataLazy>()) { mfd[1] = root; var ret = mfd[1]; Assert.IsTrue(ret.CompareTo(root) == 0, "not equal! #items= {0}", RegDataLazy._cnt); } Assert.IsTrue(false, "Count = {0}", RegDataLazy._cnt); }
public void Fillit(int nLevel = 0) { if (nLevel < 1) { using (var reg = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(_name)) { var subkeys = reg.GetSubKeyNames(); if (subkeys.Length > 0) { _childNodes = new MapFileDictLazy <List <RegDataLazy> >(); foreach (var key in reg.GetSubKeyNames()) { var newName = _name + @"\" + key; var newnode = new RegDataLazy() { _name = newName }; _childNodes.Value.Add(newnode); newnode.Fillit(nLevel + 1); } } } } }