Опубликован: 24.01.2007 | Доступ: свободный | Студентов: 1253 / 82 | Оценка: 4.37 / 4.17 | Длительность: 14:27:00
ISBN: 978-5-94774-627-3
Лекция 1:

Обзор настройки Microsoft ASP.NET

Лекция 1: 123 || Лекция 2 >
Аннотация: В данной лекции описывается структура и формат настроечных файлов, демонстрируются способы редактирования настроечного файла, дается обзор безопасности и обнаружения изменений модели настроек.

В первой части описывается работа модели настроек ASP.NET и дан обзор этой модели, который поможет вам понять материал книги. Лекция 1 подробно описывает структуру и формат настроечных файлов, а также функции модели настроек, относящиеся к безопасности и обнаружению изменений. Она включает также обзор редактирования настроечного файла. В "Изучение архитектуры настроек ASP.NET" сделан упор на архитектуре модели настроек и на то, как настройки интерпретируются и используются в Microsoft .NET Framework.

Введение в настройку Microsoft ASP.NET

Лекция описывает структуру и формат настроечных файлов, демонстрирует способы редактирования настроечного файла, дает обзор безопасности и обнаружения изменений модели настроек. Особенности и преимущества модели настроек ASP.NET включают следующее.

  • Параметры конфигурации хранятся в файлах XML с расширением .config. Это позволяет редактировать файлы в любом текстовом редакторе.
  • Настроечные файлы кэшируются в Microsoft .NET Framework и не блокируются, что позволяет вносить изменения в действующие настроечные файлы при минимальном влиянии на пользователей.
  • Настройки могут быть созданы в нескольких настроечных файлах и распространены от сервера к приложению и от родительского приложения к дочернему приложению. Это позволяет задавать параметры для сервера, приложения, директории или даже одного файла.
  • Пользовательские разделы и параметры позволяют указать ваши собственные настройки, сохраняемые в настроечных файлах, доступ к которым имеют ваши приложения.
  • Настроечные файлы защищены, и доступ к ним через запросы HTTP осуществляться не может.

Обзор конфигурации ASP.NET

ASP.NET и .NET Framework включают очень мощную и адаптируемую модель настроек, основанную на настроечных файлах в формате XML. Эти файлы содержат большое разнообразие конфигурационных параметров, которые могут быть указаны с помощью правильного XML. Когда в одном из настроечных файлов делается изменение, при следующем доступе к файлу или приложению конфигурационные параметры перекомпилируются и повторно кэшируются. После компиляции настроечные файлы кэшируются, при этом не производится их блокировка, так что вы можете и дальше изменять эти файлы. Так как файлы имеют формат XML, для их редактирования подойдет любой текстовый редактор.

Два главных типа файлов, которые вы будете использовать, называются machine.config и web.config. Файл machine.config содержит настройки для всего сервера и базовые настройки, используемые каждым веб-приложением. Файл machine.config расположен в директории c:\%windir%\Microsoft.Net\ Framework\version\config. Замените слово version на номер установленной у вас версии .NET Framework.

Замечание. %windir% является директорией установки Windows; это может быть c:\winnt, c:\windows или еще какая-либо.

Файл web.config содержит параметры, специфичные для приложения и всех дочерних приложений или директорий. Файл web.config для веб-приложения хранится в корневой директории этого приложения.

Параметры в файле приложения web.config могут переопределять параметры, содержащиеся в файле machine.config. Параметры конкретного файла web.config можно снова переопределить в дополнительном файле web.config дочернего приложения этого приложения. Например, если в файле machine.config сервера отключена трассировка, то это будет параметром по умолчанию для всех приложений ASP.NET, выполняющихся на этом сервере. Если вы включите трассировку в файле web.config для веб-приложения ASP.NET App1, то для App1 трассировка будет включена, а для всех остальных приложений она останется выключенной, так как параметр в файле web.config имеет приоритет над параметрами файла machine.config. Если добавляется дочернее приложение App1, то для этого дочернего приложения трассировка также будет включена, поскольку приложение сначала наследует параметры из файла machine.config, а затем – из файла web.config для App1.

Более подробно данный процесс описан в "Изучение архитектуры настроек ASP.NET" , но сейчас нужно запомнить, что параметры уровня сервера хранятся в файле machine.config и могут быть переопределены параметрами уровня приложения, которые хранятся в файле web.config, индивидуальном для каждого приложения.

Разбор настроечных файлов ASP.NET

Файлы machine.config и web.config играют различные роли в архитектуре конфигурации, но формат и доступные параметры этих файлов практически одинаковы. Эти файлы основаны на XML, поэтому существует несколько правил XML, которые можно к ним применить.

  • XML чувствителен к регистру символов, и эти файлы также чувствительны к регистру.
  • Наборы тегов должны иметь начальный и завершающий теги. Например, <configuration> должен иметь закрывающий </configuration> или закрываться сам <configuration />.
  • Теги могут иметь несколько атрибутов и значений, и значения должны находиться внутри скобок.

Поскольку файлы чувствительны к регистру, важно знать два соглашения, используемых при создании настроечных файлов.

  • "Верблюжья" нотация. Каждое слово состоит из строчных букв, за исключением первых букв добавленных слов. Например, appSettings, maxRequestLength, userName.
  • Нотация в стиле Паскаля. Каждое слово начинается с заглавной буквы, включая первое и все добавленные слова, например PublicKeyToken, RemoteOnly, AutoGenerate.

Ниже приведен фрагмент файла machine.config, показывающий различные разделы и общую структуру.

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<configSections>
  <sectionGroup name="system.web">
    <section name="httpRuntime" type
      ="System.Web.Configuration.HttpRuntimeConfigurationHandler,
      System.Web, Version=1.0.3300.0, Culture=neutral,
      PublicKeyToken=b03f5f7f11d50a3a" />
    <section name="compilation" type=
      "System.Web.Configuration.CompilationConfigurationHandler,
      System.Web, Version=1.0.3300.0, Culture=neutral,
      PublicKeyToken=b03f5f7f11d50a3a" />
  </sectionGroup>
</configSections>
<system.web>
  <httpRuntime executionTimeout="5000" maxRequestLength="4096"
    useFullyQualifiedRedirectUrl="false" minFreeThreads="8"
    minLocalRequestFreeThreads="4" appRequestQueueLimit="100" />
  <compilation debug="false" explicit="true" defaultLanguage="vb"
    strict="false" batch="true" batchTimeout="15"
    maxBatchSize="1000" maxBatchGeneratedFileSize="3000"
    numRecompilesBeforeAppRestart="15">
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CSharp.CSharpCodeProvider, System,
        Version=1.0.3300.0, Culture=neutral,
        PublicKeyToken=b77a5c561934e089" warningLevel="1" />
      <compiler language="vb;vbs;visualbasic;vbscript" extension=
        ".vb" type="Microsoft.VisualBasic.VBCodeProvider,
        System, Version=1.0.3300.0, Culture=neutral,
        PublicKeyToken=b77a5c561934e089" />
      <compiler language="js;jscript;javascript" extension=".js"
        type="Microsoft.JScript.JScriptCodeProvider,
        Microsoft.JScript, Version=7.0.3300.0, Culture=neutral,
        PublicKeyToken=b03f5f7f11d50a3a" />
    </compilers>
  </compilation>
</system.web>
</configuration>

В начале файла machine.config находится объявление XML.

<?xml version="1.0" encoding="UTF-8" ?>

Эта строка указывает, что файл является документом, совместимым с XML 1.0, и использует кодировку UTF-8. Следующая срока является началом конфигурационных данных.

<configuration>

Она представляет открывающий тег набора тегов, который содержит все разделы настроек и параметры. В конце файла находится тег </configuration>. Все разделы и параметры располагаются между этими двумя тегами.

Лекция 1: 123 || Лекция 2 >
Геннадий Щербаков
Геннадий Щербаков

В начале года получил код dreamspark  H4RQ9-QJ6FD-YJWJT-P6FVF-HGXQZ. При  его вводе- сообщение что он просрочен.