Являются ли операции XmlNode «по ссылке»? C# - PullRequest
0 голосов
/ 24 апреля 2020

Этот код работает, но я хочу понять, почему у меня нет передачи измененного 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;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...