通过XML连接数据库配置的小技巧

                       

 摘要:用GetXML类来取得数据库文件的配置。

using System;

using System.Web;

using System.Xml;

using System.Xml.XPath;

namespace OMC

{

       /// <summary>

       ///

       /// </summary>

       public class GetXML

       {

              string PATH;

//The Path of currection application|the path of the file of Connection.config

              public GetXML()

              {

//Get a path of document

this.PATH=HttpContext.Current.Server.MapPath("./GZYClass/configuration/Connection.config");

              }

              /// <summary>

              /// 这里是用的第一种方法用的是XmlDocument

              /// 这里才用循环的方式

              /// </summary>

              /// <returns></returns>

              public string GetContr()

              {

                     string Constr=string.Empty;

                     XmlDocument XmlDoc=new XmlDocument();

                     XmlDoc.Load(this.PATH);

                     XmlNode XmlNo=

XmlDoc.SelectSingleNode("/GZY/DataBase/Connection2[@type='KQ']");

                     XmlNodeList XmlNL=XmlNo.ChildNodes;

                     foreach(XmlNode XN in XmlNL)

                     {

                            XmlElement XmlE=(XmlElement)XN;

                            if(XmlE.Name=="DataSource")

                            {

                                   Constr+=XmlE.InnerText;

                            }

                            else if(XmlE.Name=="Initial")

                            {

                                   Constr+=XmlE.InnerText;

                            }

                            else if(XmlE.Name=="Password")

                            {

                                   Constr+=XmlE.InnerText;

                            }

                            else if(XmlE.Name=="UserID")

                            {

                                   Constr+=XmlE.InnerText;

                            }

                     }

                     return Constr;

              }

              public void  GetViewDataTable()

              {

                     object[] O=new object[2];

              }

              /// <summary>

              /// 这里用到了XPathDocument,这里不需要用到循环

              /// 获取考勤的书库连接字符串

              /// </summary>

              /// <returns></returns>

              public string GetContr2()

              {

                     string Constr=string.Empty;

                     XPathDocument XPD=new XPathDocument(this.PATH);

                     XPathNavigator XPN=XPD.CreateNavigator();

                     XPathNodeIterator XNI=

XPN.Select("GZY/DataBase/Connection2[@type='KQ']");

                     XNI.MoveNext();

                     Constr=XNI.Current.Value;

                     return  Constr;

              }

              /// <summary>

              /// 获取OA系统数据库连接字符串

              /// </summary>

              /// <returns></returns>

              public string GetOAConstr()

              {

                     string Constr=string.Empty;

                     XPathDocument XPD=new XPathDocument(this.PATH);

                     XPathNavigator XPN=XPD.CreateNavigator();

                     XPathNodeIterator XNI=XPN.Select("GZY/DataBase/Connection[@type='OA']");

                     XNI.MoveNext();

                     Constr=XNI.Current.Value;

                     return Constr;

              }

              public void  gao()

              {

              }           

       }

}

xml文件

<?xml version="1.0" encoding="utf-8" ?>

<GZY>

       <DataBase>

              <Connection>

                     <DataSource>(local)</DataSource>

                     <Initial>siadr-oa</Initial>

                     <Password></Password>

                     <UserID>sa</UserID>

              </Connection>

              <SQL>

                     <Select>

                            <PopDialog ID="00001" type="Part" Explain="得到window.open()列表">

                select * from _GZY_PopDialg where visible='' order by oderi

                            </PopDialog>

                            <PopDialog ID="00002" type="*" Explain="得到表中所有的行">

                            select * from _GZY_PopDialog

                            </PopDialog>

                     </Select>

                     <Insert></Insert>

                     <Updata></Updata>

              </SQL>

              <Connection2 type="KQ" Description="这里是电子考勤的数据库访问字符串">

                     <DataSource>data source=(local);</DataSource>

                     <Initial>Initial Catalog=shykq;</Initial>

                     <Password>Password=;</Password>

                     <UserID>user ID=sa</UserID>

              </Connection2>

       <Connection ID="0000001" type="OA" Des="这是获取OA系统的数据库连接字符串">

                     <DataSource>data source=(local);</DataSource>

                     <Initial>Initial Catalog=siadr-oa;</Initial>

                     <Password>Password=;</Password>

                     <UserID>user ID=sa</UserID>

       </Connection>

       </DataBase>

       <File></File>

</GZY>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值