Поскольку только переменная часть узла, которую вы добавляете, является атрибутом Location
, вы можете очень легко извлечь этот процесс в метод, например, следующий:
private XElement CreateEmployeeNode(string location)
{
return new XElement("Employee",
new XAttribute("Location", location),
new XElement("Male", new XAttribute("Value", "True")),
new XElement("Name", new XAttribute("Value", "xxx"))
);
}
Теперь, когда вы хотите обновить свой существующий XML новыми данными о сотрудниках, вы делаете это следующим образом:
var document = XDocument.Parse(xmlString); // or .Load, depending how you get XML
var newEmployeeLocation = textBox.Text;
document.Element("Emp").Add(CreateEmployeeNode(newEmployeeLocation));
Новый узел сотрудника будет добавлен к существующим.
Для получения дополнительной информации о создании деревьев XML с помощью LINQ to XML (поскольку это то, с чем мы здесь имеем дело), обратитесь к онлайн-руководству здесь .