Read xml config
cv_DBString = SingleReadXmlAttr("CONFIG/DB", "DBString");
cv_ConfigPath = Application.StartupPath + "\\Config\\Config.xml";
private string SingleReadXmlAttr(string m_XmlStruct, string m_Attr)
{
XmlDocument XmlDoc = new XmlDocument();
string result = "";
try
{
//XmlDoc.LoadXml(cv_XmlConfig);
XmlDoc.Load(cv_ConfigPath);
XPathNavigator nav = ((IXPathNavigable)XmlDoc).CreateNavigator();
XPathNodeIterator iter = nav.Select(m_XmlStruct);
iter.MoveNext();
result = iter.Current.GetAttribute(m_Attr, "");
iter = null;
nav = null;
}
catch (System.Exception ex)
{
MessageBox.Show("ServerMainForm->SingleReadXmlAttr Error : " + ex.Message.ToString());
}
finally
{
XmlDoc = null;
}
return result;
}
Config.xml
<?xml version="1.0" encoding="big5" ?>
<CONFIG>
<DB
DBString = "Data Source=192.16.16.32;Initial Catalog=aa;User ID=sa;Password=sa"
LoginTableString = "dbo.Login"
>
</DB>
</CONFIG>
//read same tag
public static void ReadMailListFromXml()
{
XmlDocument doc = new XmlDocument();
try
{
doc.Load(Application.StartupPath + "\\Config\\Config.xml");
XPathNavigator nav = ((IXPathNavigable)doc).CreateNavigator();
XPathNodeIterator iter = nav.Select("CONFIG/MailList/To");
while (iter.MoveNext())
{
MailUtil.ToMails.Add(new MailAddress(iter.Current.GetAttribute("mail", ""), iter.Current.GetAttribute("name", "")));
}
iter = null;
nav = null;
}
catch (Exception ex)
{
MessageBox.Show("initial Exception : " + ex.Message.ToString());
}
finally
{
doc = null;
}
}
<?xml version="1.0" encoding="big5" standalone="yes"?>
<CONFIG>
<MailList>
<From mail="aa@cel.com" name="sai"/>
<To mail="bb@cel.com" name="sai"/>
<To mail="cc@cel.com" name="sai2"/>
</MailList>
</CONFIG>
留言
張貼留言