<?xml version="1.0" encoding="utf-8"?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
  <session-factory >
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
    <property name="connection.connection_string">Server=127.0.0.1;initial catalog=B_AdvanEmpDb;User Id=sa;Password=sa;</property>
    <property name="show_sql">true</property>
    <property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
    <property name="use_outer_join">true</property>
    <property name="proxyfactory.factory_class">
      NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
    </property>
    <mapping assembly="Basic"/>
    <mapping assembly="Enterprise" />
  </session-factory>
</hibernate-configuration>
获取Server=127.0.0.1;initial catalog=B_AdvanEmpDb;User Id=sa;Password=sa;连接字符串,如何读取呢?

解决方案 »

  1.   


    用键connection.connection_string读最好了。
      

  2.   


            /// <summary>
            /// 获取指定节点的值
            /// </summary>
            /// <param name="strFileName">文件路径</param>
            /// <param name="nodeName">节点名称</param>
            /// <param name="value">设置后的值</param>
            /// <param name="nodeDir">指定节点所在的节点目录</param>
            /// <returns></returns>
            public string GetNodeValue(string strFileName, string nodeName, string nodeDir)
            {
                string value = null;
                try
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(strFileName);                XmlNodeList nodeList = xmlDoc.SelectSingleNode(nodeDir).ChildNodes;//获取bookstore节点的所有子节点                 foreach (XmlNode xn in nodeList)    //遍历所有子节点 
                    {
                        XmlElement xe = (XmlElement)xn;  //将子节点类型转换为XmlElement类型                     if (xe.Name == nodeName)
                        {
                            value = xe.InnerText.Trim();                        break;
                        }
                    }
                }
                catch (Exception exp)
                {
                    throw exp;
                }            return value;
            }        /// <summary>
            /// 获取指定节点下面对应属性的值
            /// </summary>
            /// <param name="strFileName">文件路径</param>
            /// <param name="nodeName">节点名称</param>
            /// <param name="nodeDir">指定节点所在的节点目录</param>
            /// <param name="attribute">节点对应的属性名称</param>
            /// <returns></returns>
            public string GetNodeValue(string strFileName, string nodeName, string nodeDir, string attribute)
            {
                string value = null;
                try
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(strFileName);                XmlNodeList nodeList = xmlDoc.SelectSingleNode(nodeDir).ChildNodes;//获取bookstore节点的所有子节点                 foreach (XmlNode xn in nodeList)    //遍历所有子节点 
                    {
                        XmlElement xe = (XmlElement)xn;  //将子节点类型转换为XmlElement类型                     if (xe.Name == nodeName)
                        {
                            //value = xe.InnerText.Trim();
                            value = (xe).Attributes[attribute].Value;
                            break;
                        }
                    }
                }
                catch (Exception exp)
                {
                    throw exp;
                }            return value;
            }
      

  3.   


                XmlDocument xml = new XmlDocument();
                xml.Load(@"E:\1.xml");//换成你的路径
                XmlNamespaceManager ns = new XmlNamespaceManager(xml.NameTable);
                ns.AddNamespace("a", "urn:nhibernate-configuration-2.2");
                XmlNode node = xml.SelectSingleNode("//a:property[@name='connection.connection_string']",ns);
                Console.WriteLine(node.InnerText);
    /*
    输出
    Server=127.0.0.1;initial catalog=B_AdvanEmpDb;User Id=sa;Password=sa;
    */
      

  4.   

                XmlDocument doc = new XmlDocument();
                doc.Load(@"E:\Projects\Test\Test\test.xml");
                XmlNodeList nodelist=doc.GetElementsByTagName("property");
                string connStr=string.Empty;
                foreach(XmlNode property in nodelist)
                {
                    if(property.Attributes["name"].Value=="connection.connection_string")
                    {
                        connStr=property.InnerText;
                    }
                }
                Console.WriteLine(connStr);  
      

  5.   

    以下是读取xml值到文本框
    ----------------------
    DataSet ds = new DataSet();
                ds.ReadXml(PATH);            DataRow[] dt1 = ds.Tables[0].Select("id=1");            txtModuleName.Text = dt1[0].ItemArray[0].ToString();
                txtModuleRe.Text = dt1[0].ItemArray[2].ToString();
      

  6.   


    XmlDocument document = new XmlDocument();
                document.Load("test1.xml");                        XmlNodeList xnList = document.SelectNodes("*/*/*[@name = \"connection.connection_string\"]");
                string connectionString = xnList[0].InnerXml;