posts - 134,  comments - 22,  trackbacks - 0
我们在开发系统中经常会遇到一些值要从XML文件中读取,比如说一些数据库名,服务器名等等。
如果这些东西直接写在程序中是不明智的做法。当发生改变时,需要重新编译源代码,十分的麻烦。
这些东西放在xml文件中的好处是当环境发生变化时修改简单。
以下是我写的一个读取xml文件的小函数:
1,XML文件如下:
<?xml version="1.0" encoding="utf-8" ?>

<systemconfig>
    
<!-- :::システムの配置参数 ::::::::: -->
    
    
    
<!---作成者:songjincheng-->
    
<!---作成日:2007/08/09-->
    
    
<!---dbNo:数据库番号-->
    
<!---Server:服务器-->
    
<!---InitialCatalog:DB名-->
    
<!---UserID:用户-->
    
<!---Password:密码-->
    
<table1>
        
<dbNo>1</dbNo>
        
<Server>172.1.1.1</Server>
        
<InitialCatalog>dbName</InitialCatalog>
        
<UserID>8888888</UserID>
        
<Password>8888888</Password>
    
</table1>
        

    
    
    
<table2>
        
<dbNo>2</dbNo>
        
<Server>172.1.1.1</Server>
        
<InitialCatalog>mygooole</InitialCatalog>
        
<UserID>sasasasa</UserID>
        
<Password>top222333</Password>
    
</table2>


</systemconfig>

2,c#程序:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

public string getXml(string tableName, string valueName)
        
{
            DataSet ds
=new DataSet();
            
            
string xmlPath=HttpContext.Current.Server.MapPath("config.xml"); //获取xml存储路径
        
            ds.ReadXml(xmlPath);

            
string returnValue=ds.Tables[tableName].Rows[0][valueName].ToString();

            
return returnValue;
            
            
        }



private void Button1_Click(object sender, System.EventArgs e)
        
{
            
string value1=getXml("table1","InitialCatalog");
            Response.Write(
"Table1のInitialCatalog="+value1);

            
string value2=getXml("table2","InitialCatalog");
            Response.Write(
"<br><br>Table2のInitialCatalog="+value2);
        }
3,运行结果:

Table1のInitialCatalog=dbName

Table2のInitialCatalog=mygooole



posted on 2007-08-09 19:39 TRE-China R&D 阅读(2232) 评论(1)  编辑 收藏 引用 所属分类: ASP.NETXMLC#
只有注册用户登录后才能发表评论。