В дополнение вы можете использовать селектор XPath следующим образом (простой способ выбора определенных узлов):
XmlDocument doc = new XmlDocument();
doc.Load("test.xml");
var found = doc.DocumentElement.SelectNodes("//book[@title='Barry Poter']"); // select all Book elements in whole dom, with attribute title with value 'Barry Poter'
// Retrieve your data here or change XML here:
foreach (XmlNode book in nodeList)
{
book.InnerText="The story began as it was...";
}
Console.WriteLine("Display XML:");
doc.Save(Console.Out);
Добавьте пакет =, "ложь" приписывает элементу "компиляции" web.config файла.
Эта проблема происходит из-за пути в который ASP.NET 2,0 использования ссылки приложения и структура папок приложения для компиляции приложения. Если пакетное свойство элемента в web.config файле для приложения имеет значение true, ASP.NET 2,0 компиляции каждая папка в приложении в отдельный блок.
Как другая точка данных, у меня просто была эта проблема без любого доказательства циклических ссылок, как описано в ссылках в ответе Ben. Разрабатывание моего проекта веб-сайта перестало бы работать с несколькими из этих ошибок и установкой compilation batch="false"
зафиксированный это, но я не хотел идти тем путем, поскольку это - производственный веб-сайт большого выхода.
Это решение было в подпапке моей папки D:\svn, которую я отобразил на S:. Когда я открыл решение от S:, эти ошибки произошли, но если я перешел прямо к D:\svn и открыл решение, никакие ошибки.
Я также заметил это, несмотря на наличие compilation batch="true"
в моем web.config, при открытии решения от отображенного S: диск все мои .ascx файлы компилируется в их собственные блоки. Если я открываю его от физического местоположения, .ascx файлы компилируются в блоки их соответствующих папок (который является как batch="true"
как предполагается, работает).
Странно.