Да, это правильно. Переменная «пример» в цикле foreach будет содержать значение атрибута «если».
var abc = from target in xDocument.Descendants("target")
select (string)target.Attribute("if");
foreach (var example in abc)
{
Console.WriteLine(example);
}
попробуйте приведенный выше код в консольном приложении, и вы увидите значения в окне консоли. Или вы можете использовать Debug.WriteLine (пример) в другом типе приложения
Однако это лучшее выражение запроса linq
var abc = from target in xDocument.Descendants("target").Attributes("if")
select target.Value;
или измените выражение запроса linq на
var abc = from target in xDocument.Descendants("target")
select target.Attribute("if").Value;
EDIT
Чтобы помочь с вашей проблемой с отладчиком:
Я наведя курсор мыши на abc, и я вижу, что отладчик всплывает в информационном окне, как показано на рисунке ниже
![enter image description here](https://i.stack.imgur.com/6VcNY.jpg)
Это первые изображения показывают, что у «Представления результатов» есть те зеленые стрелки. Вам нужно нажать на эти стрелки, чтобы увидеть результат (как показано в сообщении рядом с ними)
Второе изображение затем показывает результаты
![enter image description here](https://i.stack.imgur.com/tGpIV.jpg)