编程修改WebConfig

 

 

 

主要源代码:

private XmlDocument myXmlDoc;

private   void  initXmlDoc()
        {
            
this .myXmlDoc  =   new  XmlDocument();
            
string  docPath  =  Server.MapPath( " ~/. "   +   " / "   +   " web.config " );
            myXmlDoc.Load(docPath);
        }
        
private   void  replaceXmlNodeValue( String XName,String XAttrKey,String XAttrValue,String XNAttrKey,String XNValue )
        {
            XmlNode myNode 
=   this .myXmlDoc.DocumentElement.SelectSingleNode(  " descendant:: "  
                
+  XName  +   " [@ "   +  XAttrKey  +   " =' "   +  XAttrValue  +   " '] "  );
            myNode.Attributes[XNAttrKey].Value 
=  XNValue;
        }
        
private   bool  reNewConfig( XmlDocument newXmlDoc )
        {
            
bool  returnValue  =   true ;
            String docPath 
=  Server.MapPath( " ~/. "   +   " / "   +   " web.config " );
            XmlTextWriter myWriter 
=   new  XmlTextWriter( docPath , this .Page.Response.ContentEncoding );
            
try
            {
                newXmlDoc.WriteContentTo( myWriter );
            }
            
catch
            {
                returnValue 
=   false ;
            }
            
finally
            {
                myWriter.Close();
            }
            
return  returnValue;
        }

 

 调用 :

String DBConnectionString  =   " server={0};database={1};UID={2};Password={3} " ;
            String newDBCntString 
=  String.Format(
                DBConnectionString,
this .txtDBIP.Text.Trim(), this .txtDBName.Text.Trim(),
                
this .txtDBUser.Text.Trim(), this .txtDBPwd.Text.Trim() );
            
this .initXmlDoc();
            
// <add key="ConnectionString" value="server=(local);database=Pedu;UID=sa;Password=sa" />
             this .replaceXmlNodeValue(  " add " , " key " , " ConnectionString " , " value " ,newDBCntString );

this .reNewConfig(  this .myXmlDoc );
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值