Легко прочитать XML-файл и получить точный текст узла, но как мне обновить этот узел новым значением?
Читать:
public static String GetSettings(SettingsType type, SectionType section)
{
XmlTextReader reader = new XmlTextReader(HttpContext.Current.Request.MapPath(APPSETTINGSPATH));
XmlDocument document = new XmlDocument();
document.Load(reader);
XmlNode node = document.SelectSingleNode(
String.Format("/MyRootName/MySubNode/{0}/{1}",
Enum.Parse(typeof(SettingsType), type.ToString()),
Enum.Parse(typeof(SectionType), section.ToString())));
return node.InnerText;
}
написать ...?
public static void SetSettings(SettingsType type, SectionType section, String value)
{
try
{
XmlTextReader reader = new XmlTextReader(HttpContext.Current.Request.MapPath(APPSETTINGSPATH));
XmlDocument document = new XmlDocument();
document.Load(reader);
XmlNode node = document.SelectSingleNode(
String.Format("/MyRootName/MySubNode/{0}/{1}",
Enum.Parse(typeof(SettingsType), type.ToString()),
Enum.Parse(typeof(SectionType), section.ToString())));
node.InnerText = value;
node.Update();
}
catch (Exception ex)
{
throw new Exception("Error:", ex);
}
}
Примечание строка, узел. Обновление (); не существует, но это то, что я хотел:)
Я видел объект XmlTextWriter, но он будет записывать весь XML в новый файл, и мне просто нужно обновить одно значение в исходном узле, я могу сохранить его как новый файл и затем переименовать новый файл в исходный имя, но ... это должно быть проще сделать это правильно?
У кого-нибудь из вас есть пример кода, который собирается это сделать?
Спасибо