Каково использование <clear/>
в файле web.config?
У меня есть это под связьюStrings:
<connectionStrings>
<clear />
</connectionStrings>
Каково использование <clear/>
в файле web.config?
У меня есть это под связьюStrings:
<connectionStrings>
<clear />
</connectionStrings>
Он очищает все унаследованные ключи, что он.
Вот статья MSDN: http://msdn.microsoft.com/en-us/library/aa903345(v=vs.71).aspx
Удаляет все ссылки на наследуемые строки подключения, разрешая только строки подключения, которые добавляются текущим элементом добавления.
В Brifly:
Каждое веб-приложение ASP.NET имеет собственный файл конфигурации, называемый файлом web.config. На самом деле каждый каталог в приложении ASP.NET может иметь один. Настройки в каждом файле web.config применяются к страницам в каталоге, в котором они размещены, и во всех подкаталогах этого каталога.
Это называется наложением конфигурации.
Итак, если вы создаете приложение ASP.NET и устанавливаете его файл web.config, добавляете пользовательские HttpHandlers, модуль UrlRewriting и т.д. и пытаетесь создать еще одно веб-приложение ASP.NET во вложенной папке, у вас могут возникнуть проблемы, потому что приложение в вложенная папка наследует все настройки из своего родительского web.config.
Итак, если вы, например, настроите модуль UrlRewriter в своих корневых веб-приложениях следующим образом:
<httpModules>
<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
И в вашем дочернем веб-приложении (в подпапке) вы не используете UrlRewriteModule, а затем, если вы попытаетесь запустить дочернее веб-приложение в своем браузере, вы получите ошибку: Ошибка конфигурации Описание: Произошла ошибка при обработке файла конфигурации, необходимого для обслуживания этого запроса. Ознакомьтесь с конкретными данными об ошибках ниже и соответствующим образом измените свой файл конфигурации.
Сообщение об ошибке Parser: не удалось загрузить файл или сборку 'UrlRewritingNet.UrlRewriter' или одну из его зависимостей. Система не может найти указанный файл. (d:\Projects\VS\AspDotNetFaqProject\Website\web.config строка 89)
Ошибка источника:
Линия 88: Строка 89: Строка 90: Строка 91:
Что происходит здесь, так как UrlRewriteModule настроен в файле web.config родительской папки, этот параметр наследуется файлом дочернего приложения web.config, и из-за этого ASP.NET ищет DLL файл UrlRewriteModule в BIN, и, конечно, его нет.
К счастью, есть легкое решение этой проблемы.
Первое, что вы можете сделать, это удалить проблемный HttpModule в файле child.config вашего дочернего приложения, используя команду remove:
<httpModules>
<remove name="UrlRewriteModule" />
</httpModules>
Это приведет к удалению обработчика, и ваше приложение будет работать нормально. Или вы можете использовать команду следующим образом:
<httpModules>
<clear/>
</httpModules>
Это позволит очистить все HttpModules в дочернем приложении.