Этот код работает, но я хочу понять, почему у меня нет передачи измененного XmlDocument
обратно вызывающей стороне - я полагаю, обзор кода;). Я предполагаю, что эти операции внутри XmlNode
используют «по ссылке» для работы с документом. Я вижу, как это работает, но я просто хочу убедиться, что правильно понимаю. Я не нашел никакой документации, касающейся этого конкретно - вероятно, потому что это так очевидно. Так что помогите мне здесь, друзья разработчики. Все это происходит с помощью Ref, и мне не нужно беспокоиться о том, чтобы передать измененный XmlDocument
обратно вызывающей стороне правильно? Кроме того, эта тема безопасна? Я использую этот код как часть сервисного приложения.
public void AddNewElement(XmlDocument doc, string elementName)
{
XmlNode selectedNode = doc.SelectSingleNode("//" + elementName);
if (selectedNode == null)
{
var childNodes = doc.LastChild.LastChild.ChildNodes;
XmlNode appendNode = childNodes.Item(childNodes.Count - 1);
XmlNode newNode = appendNode.AppendChild(doc.CreateElement(elementName));
newNode.InnerText = str64;
}
}