C#winform 配置webconfig

今天公司老大让做一个web.config的配置工具,虽然好久没写winform的程序了,不过想想无非也就是操作XML文件嘛,信誓旦旦的说两个小时就可以了。结果时间操作才发现不对劲,读取普通的XML文件没问题,操作web.config就不行,总是找不到节点。悲剧啊,折腾了一上午。

偶然发现web.config最开始比普通xml文件多了一行 xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0",心里一动,把这一行删掉,这下可以了,看来问题就出在这个身上啊。百度了一下,发现这个东东原来是xml的命名空间(汗,头一次知道这个东东),找到问题就好办了:

 

        /// <summary>
        /// 获取连接字符串信息
        /// </summary>
        public string GetConnectionString()
        {
            return QueryNode("/configuration/connectionStrings", "name", "ConnectionString", "connectionString");
        }


        private string QueryNode(string xpath, string nameField, string nameValue, string valueField)
        {

            XmlDocument doc = new XmlDocument();

            doc.Load(xmlFilePath);

            xpath = xpath.Replace("/", "//ww:");
            XmlNamespaceManager ns = new XmlNamespaceManager(doc.NameTable);
            ns.AddNamespace("ww", doc.DocumentElement.NamespaceURI);
            XmlNode pareNode = doc.SelectSingleNode(xpath, ns);
        }
posted @ 2011-09-02 16:08  梅子黄时雨  阅读(2307)  评论(0编辑  收藏  举报