Мне нужно получить точный параметр ConnectionString
из раздела конфигурации MAINDB
от ServerConfig
.Linq XML complex select (3 уровня)
<?xml version="1.0" encoding="utf-8" ?>
<ServerConfig>
<config section="MAINDB">
<parameter type="ConnectionString">"CONNSTRING"</parameter>
<parameter type="ConnectionString1">"CONNSTRING1"</parameter>
<parameter type="ConnectionString2">"CONNSTRING2"</parameter>
<parameter type="ConnectionString3">"CONNSTRING3"</parameter>
</config>
<config section="OTHERDB">
<parameter type="ConnectionString">"CONNSTRING"</parameter>
<parameter type="ConnectionString1">"CONNSTRING1"</parameter>
<parameter type="ConnectionString2">"CONNSTRING2"</parameter>
<parameter type="ConnectionString3">"CONNSTRING3"</parameter>
</config>
<config section="OTHERPARAM">
<parameter type="OtherString">"OTHERSTRING"</parameter>
</config>
</ServerConfig>
Я пробовал несколько подходов с Linq без успеха.
Моя последняя попытка:
var parameters =
from el in xdoc.Elements(GivenSystem)
where (from add in el.Elements("config")
where (string)add.Attribute("section") == ConfigSection
select add).Any()
select el;
foreach (var t in parameters)
{
Console.WriteLine(t.Value.ToString() + " - ");
}
выбирает все параметры из всех разделов.
Как я могу написать этот запрос?