public class KeyValue
{
private string key = string.Empty;
public string Key
{
get { return key; }
set { key = value; }
}
private string value = string.Empty;
public string Value
{
get { return this.value; }
set { this.value = value; }
}
public KeyValue(string key, string value)
{
this.Key = key;
this.Value = value;
}
}
public class Result
{
public static string CreateResult(string status, string message, List<KeyValue> rsList)
{
try
{
XmlDocument xmlDoc = new XmlDocument();
//创建类型声明节点
XmlNode node = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "");
xmlDoc.AppendChild(node);
//创建根节点
XmlNode root = xmlDoc.CreateElement("data");
xmlDoc.AppendChild(root);
XmlNode result = xmlDoc.CreateNode(XmlNodeType.Element, "result", null);
CreateNode(xmlDoc, result, "status", status);
CreateNode(xmlDoc, result, "message", message);
root.AppendChild(result);
XmlNode writetext = xmlDoc.CreateNode(XmlNodeType.Element, "writetext", null);
root.AppendChild(writetext);
if (rsList != null)
{
for (int i = 0; i < rsList.Count; i++)
{
CreateNode(xmlDoc, writetext, rsList[i].Key, rsList[i].Value);
}
}
return xmlDoc.InnerXml;
}
catch (Exception)
{
throw;
}
}
public static void CreateNode(XmlDocument xmlDoc, XmlNode parentNode, string name, string value)
{
XmlNode node = xmlDoc.CreateNode(XmlNodeType.Element, name, null);
node.InnerText = value;
parentNode.AppendChild(node);
}
public static XmlDocument CreateTitle(string status, string message)
{
try
{
XmlDocument xmlDoc = new XmlDocument();
//创建类型声明节点
XmlNode node = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "");
xmlDoc.AppendChild(node);
//创建根节点
XmlNode root = xmlDoc.CreateElement("data");
xmlDoc.AppendChild(root);
XmlNode result = xmlDoc.CreateNode(XmlNodeType.Element, "result", null);
CreateNode(xmlDoc, result, "status", status);
CreateNode(xmlDoc, result, "message", message);
root.AppendChild(result);
return xmlDoc;
}
catch (Exception)
{
throw;
}
}
public static string CreateList(XmlDocument xmlDoc, string elementParent, string item, List<KeyValue> rsList)
{
try
{
XmlNode xmlNode = xmlDoc.SelectSingleNode("data");
XmlNode writetext = xmlNode.SelectSingleNode(elementParent);
XmlNode itemNode = null;
if (writetext == null)
{
writetext = xmlDoc.CreateNode(XmlNodeType.Element, elementParent, null);
xmlNode.AppendChild(writetext);
itemNode = xmlDoc.CreateNode(XmlNodeType.Element, item, null);
writetext.AppendChild(itemNode);
}
else
{
itemNode = xmlDoc.CreateNode(XmlNodeType.Element, item, null);
writetext.AppendChild(itemNode);
}
if (rsList != null)
{
for (int i = 0; i < rsList.Count; i++)
{
CreateNode(xmlDoc, itemNode, rsList[i].Key, rsList[i].Value);
}
}
return xmlDoc.InnerXml;
}
catch (Exception)
{
throw;
}
}
}
public enum ResultState
{
success = 1, failed = 0, none = -1, error = -2, mserror = -3
}
public class HelperXml
{
/// <summary>
/// 解析xml
/// </summary>
/// <param name="xmltext"></param>
public static XmlNode AnalysisXml(string xmlfile)
{
try
{
System.Xml.XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlfile);
XmlNode root = xmlDoc.SelectSingleNode("master");
//获取根节点下所有子节点
XmlNodeList nodelist = root.ChildNodes;
return root;
}
catch (Exception)
{
throw;
}
}
/// <summary>
/// 获取指定节点下所有节点
/// </summary>
/// <param name="xmlNode"></param>
/// <param name="nodeName"></param>
/// <returns></returns>
public static XmlNode GetAppointXmlnode(XmlNode xmlNode, string nodeName)
{
try
{
XmlNode node = xmlNode.SelectSingleNode(nodeName);
return node;
}
catch (Exception)
{
throw;
}
}
}