下面的代码在服务器上不起作用。我正在尝试根据id更新子节点。代码如下。
此代码在本地工作正常,但在服务器上不起作用。如果我在下面的代码中做错了,请告诉我。
for (int i = 0; i < DateData.Length - 1; i++)
{
XmlDocument xmlDoc = new XmlDocument();
string filepathsUpdate = Server.MapPath("Contact.xml");
xmlDoc.Load(filepathsUpdate);
XmlNode node = xmlDoc.SelectSingleNode("/CATALOG/CD[ID=" + DateData[i] + "]/Status");
node.InnerText = "Request Completed";
xmlDoc.Save(filepathsUpdate);
}
我可以通过任何其他方式根据id更新状态节点.此代码适用于C#2.0,这是框架2.0...在net中。
我想是这个
XmlNode node = xmlDoc.SelectSingleNode("/CATALOG/CD[ID=" + DateData[i] + "]/Status");
也许应该是这个
var xpath = String.Format(@"/CATALOG/CD[ID=""{0}""]/Status", DateData[i]);
XmlNode node = xmlDoc.SelectSingleNode(xpath);
甚至可能这样,具体取决于DateData
的数据类型.
var xpath = String.Format(@"/CATALOG/CD[ID=""{0}""]/Status", DateData[i].ToString("SOME_OBSCURE_FORMAT_STRING"));
XmlNode node = xmlDoc.SelectSingleNode(xpath);