更改配置文件C#中的值

时间:2018-07-26 14:20:05

标签: c# xml

我有配置文件。我需要从代码中手动更新此文件。我的代码几乎可以正常工作,但是问题在于特殊字符,例如“ <”或“>”。 当我运行代码时,我可以在文件内部看到此行,而不是html代码。 如何避免字符“&”,“ <”的约定?

此代码的结果是:enter image description here

        string path = @"C:\path\filename.exe.config";
        XmlDocument xml = new XmlDocument();
        xml.Load(path);

        XmlNodeList textlist = xml.GetElementsByTagName("setting");
        string depName = string.Empty;
        string siteName = string.Empty;
        for (int i = 0; i < textlist.Count; i++)
        {
            if (textlist[i].OuterXml.Contains("DepartmentName"))
            {
                string xml1 = "<value> Test</value>";
                textlist[i].InnerText = xml1;
            }

        }
        xml.Save(path);

enter image description here

1 个答案:

答案 0 :(得分:5)

您需要使用InnerXml属性(而不是InnerText)

例如代码将如下所示:

textlist[i].InnerXml = xml1;