C#通用类实现读取xml控制Asp.net控件输入信息长度2011-03-25方法体using System; using System.Xml; using System.Configuration; using System.Web; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
namespace XMLSize { public struct strRestric { public string msgPage; public string msgPrompt; public int size; } public class XmlRestrict { public static strRestric res; public XmlRestrict() { res.msgPage=""; res.msgPrompt=""; res.size=0; } public static object Restrict(string xmlPathName,string nodeID,strRestric res) { int NodeNum=1; string path=""; path =ConfigurationSettings.AppSettings.Get(xmlPathName).ToString(); path+="Restrict.xml"; try { XmlDocument xmlDoc=new XmlDocument(); xmlDoc.Load(path); XmlNodeList nodeList=xmlDoc.SelectSingleNode("Tree").ChildNodes; foreach(XmlNode xn in nodeList) { XmlElement xe=(XmlElement)xn; if(xe.Name=="Node") { XmlNodeList nls=xe.ChildNodes; foreach(XmlNode xn1 in nls) { XmlElement xe2=(XmlElement)xn1; if(xe2.Name=="PageId") { if(xe2.InnerText==nodeID) { XmlNode xnChild=(XmlNode)xe2; XmlNode child=xnChild.ParentNode.ChildNodes[NodeNum+1]; XmlElement xeChild=(XmlElement)child; string Id=xeChild.GetAttribute("value"); int Pid=int.Parse(Id); res.msgPage=child.InnerText.ToString(); res.msgPrompt=xnChild.ParentNode.ChildNodes[NodeNum+2].InnerText.ToString(); res.size=Pid; return res; } break; } } } } } catch {} return null; }