Делая небольшую домашнюю работу, я могу проверить свой код и найти проблему:
var a = XElement.Parse(@"<msg t='sys'><body action='rndK' r='-1'><k>randomKey</k></body></msg>");
var xmlNode = a.ToXmlDocument();
Вышеуказанное как раз, так что я вновь создать XMLnode. ToXmlDocument
можно найти here.
Тогда мы имеем следующее ...
var msg = xmlNode.ChildNodes[0];
msg
Ваш первый дочерний узел, если бы вы отделенный ее, как и я, то вы бы увидели его в отладчике. Остальное следует, естественно ...
var body = msg.ChildNodes[0];
var action = body.Attributes["action"];
string actionValue = action.Value;
Причина, почему ваш код: xmlCode.ChildNodes[0].Attributes["action"]
возвращает ничего является msg
узел не содержит атрибут action
и, следовательно, вы не получите ничего в результате.
Исправлена ошибка –
Правильная ошибка. Кажется, что вам нужно удалить вопрос, если проблема была исправлена, так как вы действительно не представляете каких-либо реальных подробностей о том, что проблема: «Что не выводит ничего» ничего не значит из нас – MethodMan
проблема в том, что он ничего не возвращает, когда он должен получить action = 'rndK' –