當前位置: 首頁>>代碼示例>>C#>>正文


C# XmlConfigSource.Reload方法代碼示例

本文整理匯總了C#中Nini.Config.XmlConfigSource.Reload方法的典型用法代碼示例。如果您正苦於以下問題:C# XmlConfigSource.Reload方法的具體用法?C# XmlConfigSource.Reload怎麽用?C# XmlConfigSource.Reload使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Nini.Config.XmlConfigSource的用法示例。


在下文中一共展示了XmlConfigSource.Reload方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: Reload

        public void Reload()
        {
            string filePath = "Reload.xml";
            XmlConfigSource source = new XmlConfigSource ();

            IConfig petConfig = source.AddConfig ("Pets");
            petConfig.Set ("cat", "Muffy");
            petConfig.Set ("dog", "Rover");
            IConfig weatherConfig = source.AddConfig ("Weather");
            weatherConfig.Set ("skies", "cloudy");
            weatherConfig.Set ("precipitation", "rain");
            source.Save (filePath);

            Assert.AreEqual (2, petConfig.GetKeys ().Length);
            Assert.AreEqual ("Muffy", petConfig.Get ("cat"));
            Assert.AreEqual (2, source.Configs.Count);

            XmlConfigSource newSource = new XmlConfigSource (filePath);

            IConfig compareConfig = newSource.Configs["Pets"];
            Assert.AreEqual (2, compareConfig.GetKeys ().Length);
            Assert.AreEqual ("Muffy", compareConfig.Get ("cat"));
            Assert.IsTrue (compareConfig == newSource.Configs["Pets"],
                            "References before are not equal");

            // Set the new values to source
            source.Configs["Pets"].Set ("cat", "Misha");
            source.Configs["Pets"].Set ("lizard", "Lizzy");
            source.Configs["Pets"].Set ("hampster", "Surly");
            source.Configs["Pets"].Remove ("dog");
            source.Configs.Remove (weatherConfig);
            source.Save (); // saves new value

            // Reload the new source and check for changes
            newSource.Reload ();
            Assert.IsTrue (compareConfig == newSource.Configs["Pets"],
                            "References after are not equal");
            Assert.AreEqual (1, newSource.Configs.Count);
            Assert.AreEqual (3, newSource.Configs["Pets"].GetKeys ().Length);
            Assert.AreEqual ("Lizzy", newSource.Configs["Pets"].Get ("lizard"));
            Assert.AreEqual ("Misha", newSource.Configs["Pets"].Get ("cat"));
            Assert.IsNull (newSource.Configs["Pets"].Get ("dog"));

            File.Delete (filePath);
        }
開發者ID:rwhitworth,項目名稱:nini,代碼行數:45,代碼來源:XmlConfigSourceTests.cs


注:本文中的Nini.Config.XmlConfigSource.Reload方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。