string sqlStr = "";
sqlStr += "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
sqlStr += "<paramter>";
sqlStr += "<daterange>";
sqlStr += " <fromdate>";
sqlStr += fromtime;
sqlStr += " </fromdate>";
sqlStr += " <todate>";
sqlStr += totime;
sqlStr += " </todate>";
sqlStr += "</daterange>";
sqlStr += " <machine>";
sqlStr += " </machine>";
sqlStr += " <problem>";
sqlStr += " </problem>";
sqlStr += " <enableattribute>";
sqlStr += " <enable>"+attribute +"</enable>";
if( attribute=="1")
{
sqlStr += " <attribute>";
sqlStr += " <attributeseries>"+attributeSeries+"</attributeseries>";
sqlStr += " <attributemodel>"+attributeModel+"</attributemodel>";
sqlStr += " </attribute>";
}
sqlStr += " </enableattribute>";
sqlStr += " <excludeRC>";
sqlStr += " <exclude>";
sqlStr += exclude;
sqlStr += " </exclude>";
sqlStr += " </excludeRC>";
sqlStr += "</paramter>";
XmlDocument myDoc = new XmlDocument(); //定义一个XmlDocument对象。
myDoc.LoadXml(sqlStr);
XmlNodeList xnl = myDoc.SelectSingleNode("paramter").ChildNodes;
foreach (ListItem li in ListBox1.Items)
{
XmlNode xn =xnl.Item(1);
// XmlElement xe = (XmlElement)xn; XmlElement xesub1 = myDoc.CreateElement("machineInfo");
xesub1.InnerText =machine;//设置文本节点
xn.AppendChild(xesub1);//添加到<book>节点中
}
foreach (ListItem list in ListBox2.Items)
{
XmlNode xn = xnl.Item(2);
// XmlElement xe = (XmlElement)xn; XmlElement xesub1 = myDoc.CreateElement("problemInfo");
xesub1.InnerText = promble;//设置文本节点
xn.AppendChild(xesub1);//添加到<book>节点中 } string s= sqlStr;为什么foreach后可以添加子节点,可是返回后sqlStr开始之前的,没用
请高手讲解并解决问题
sqlStr += "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
sqlStr += "<paramter>";
sqlStr += "<daterange>";
sqlStr += " <fromdate>";
sqlStr += fromtime;
sqlStr += " </fromdate>";
sqlStr += " <todate>";
sqlStr += totime;
sqlStr += " </todate>";
sqlStr += "</daterange>";
sqlStr += " <machine>";
sqlStr += " </machine>";
sqlStr += " <problem>";
sqlStr += " </problem>";
sqlStr += " <enableattribute>";
sqlStr += " <enable>"+attribute +"</enable>";
if( attribute=="1")
{
sqlStr += " <attribute>";
sqlStr += " <attributeseries>"+attributeSeries+"</attributeseries>";
sqlStr += " <attributemodel>"+attributeModel+"</attributemodel>";
sqlStr += " </attribute>";
}
sqlStr += " </enableattribute>";
sqlStr += " <excludeRC>";
sqlStr += " <exclude>";
sqlStr += exclude;
sqlStr += " </exclude>";
sqlStr += " </excludeRC>";
sqlStr += "</paramter>";
XmlDocument myDoc = new XmlDocument(); //定义一个XmlDocument对象。
myDoc.LoadXml(sqlStr);
XmlNodeList xnl = myDoc.SelectSingleNode("paramter").ChildNodes;
foreach (ListItem li in ListBox1.Items)
{
XmlNode xn =xnl.Item(1);
// XmlElement xe = (XmlElement)xn; XmlElement xesub1 = myDoc.CreateElement("machineInfo");
xesub1.InnerText =machine;//设置文本节点
xn.AppendChild(xesub1);//添加到<book>节点中
}
foreach (ListItem list in ListBox2.Items)
{
XmlNode xn = xnl.Item(2);
// XmlElement xe = (XmlElement)xn; XmlElement xesub1 = myDoc.CreateElement("problemInfo");
xesub1.InnerText = promble;//设置文本节点
xn.AppendChild(xesub1);//添加到<book>节点中 } string s= sqlStr;为什么foreach后可以添加子节点,可是返回后sqlStr开始之前的,没用
请高手讲解并解决问题
sqlStr = myDoc.InnerText.
Line 547: sqlStr = myDoc.InnerText.
Line 548: myDoc.LoadXml(sqlStr);
Line 549: XmlNodeList xnl = myDoc.SelectSingleNode("paramter").ChildNodes;
Line 550: 'string' does not contain a definition for 'myDoc'
Identifier expected, 'foreach' is a keyword
你对myDoc的增加操作并没有影响sqlStr这个字符串。当你需要取得增加后的xml内容时,使用myDoc.InnerText。别问"加载什么地方"这种生硬的问题。