ExpressionBuilderCollection Класс

Определение

Представляет коллекцию объектов ExpressionBuilder. Этот класс не наследуется.

public ref class ExpressionBuilderCollection sealed : System::Configuration::ConfigurationElementCollection
[System.Configuration.ConfigurationCollection(typeof(System.Web.Configuration.ExpressionBuilder))]
public sealed class ExpressionBuilderCollection : System.Configuration.ConfigurationElementCollection
[<System.Configuration.ConfigurationCollection(typeof(System.Web.Configuration.ExpressionBuilder))>]
type ExpressionBuilderCollection = class
    inherit ConfigurationElementCollection
Public NotInheritable Class ExpressionBuilderCollection
Inherits ConfigurationElementCollection
Наследование
Атрибуты

Примеры

В этом разделе приведены два примера кода. В первом примере показано, как декларативно указать значения для нескольких свойств ExpressionBuilderCollection класса. Во втором примере показано, как использовать члены ExpressionBuilderCollection класса.

В следующем примере файла конфигурации показано, как декларативно указать значения для нескольких свойств ExpressionBuilderCollection класса.

<system.web>  
  <compilation>   
    <expressionBuilders>  
      <add   
        expressionPrefix="Resources"   
        type="System.Web.Compilation.ResourceExpressionBuilder"/>  
      <add   
        expressionPrefix="ConnectionStrings"   
        type="System.Web.Compilation.  
        ConnectionStringsExpressionBuilder"/>  
      <add expressionPrefix="AppSettings"   
        type="System.Web.Compilation.AppSettingsExpressionBuilder" />  
    </expressionBuilders>  
  </compilation>  
</system.web>  

В следующем примере кода показано, как использовать члены ExpressionBuilderCollection класса.

#region Using directives

using System;
using System.Configuration;
using System.Web.Configuration;

#endregion

namespace Samples.Aspnet.SystemWebConfiguration
{
  class UsingExpressionBuildCollection
  {
    static void Main(string[] args)
    {
      try
      {
        // Set the path of the config file.
        string configPath = "";

        // Get the Web application configuration object.
        Configuration config =
          WebConfigurationManager.OpenWebConfiguration(configPath);

        // Get the section related object.
        CompilationSection configSection =
          (CompilationSection)config.GetSection("system.web/compilation");

        // Display title and info.
        Console.WriteLine("ASP.NET Configuration Info");
        Console.WriteLine();

        // Display Config details.
        Console.WriteLine("File Path: {0}",
          config.FilePath);
        Console.WriteLine("Section Path: {0}",
          configSection.SectionInformation.Name);

        // Create a new ExpressionBuilder reference.
        ExpressionBuilder myExpressionBuilder =
          new ExpressionBuilder("myCustomExpression", "MyCustomExpressionBuilder");
        // Add an ExpressionBuilder to the configuration.
        configSection.ExpressionBuilders.Add(myExpressionBuilder);

        // Add an ExpressionBuilder to the configuration.
        ExpressionBuilder myExpressionBuilder2 =
          new ExpressionBuilder("myCustomExpression2", "MyCustomExpressionBuilder2");
        configSection.ExpressionBuilders.Add(myExpressionBuilder2);

        // Display the ExpressionBuilder count.
        Console.WriteLine("ExpressionBuilder Count: {0}",
          configSection.ExpressionBuilders.Count);

        // Display the ExpressionBuildersCollection details.
        int i = 1;
        int j = 1;
        foreach (ExpressionBuilder expressionBuilder in configSection.ExpressionBuilders)
        {
          Console.WriteLine();
          Console.WriteLine("ExpressionBuilder {0} Details:", i);
          Console.WriteLine("Type: {0}", expressionBuilder.ElementInformation.Type);
          Console.WriteLine("Source: {0}", expressionBuilder.ElementInformation.Source);
          Console.WriteLine("LineNumber: {0}", expressionBuilder.ElementInformation.LineNumber);
          Console.WriteLine("Properties Count: {0}", expressionBuilder.ElementInformation.Properties.Count);
          j = 1;
          foreach (PropertyInformation propertyItem in expressionBuilder.ElementInformation.Properties)
          {
            Console.WriteLine("Property {0} Name: {1}", j, propertyItem.Name);
            Console.WriteLine("Property {0} Value: {1}", j, propertyItem.Value);
            ++j;
          }
          ++i;
        }

        // Remove an ExpressionBuilder.
        configSection.ExpressionBuilders.RemoveAt
          (configSection.ExpressionBuilders.Count-1);

        // Remove an ExpressionBuilder.
        configSection.ExpressionBuilders.Remove("myCustomExpression");

        // Update if not locked.
        if (!configSection.SectionInformation.IsLocked)
        {
          config.Save();
          Console.WriteLine("** Configuration updated.");
        }
        else
        {
          Console.WriteLine("** Could not update, section is locked.");
        }
      }

      catch (Exception e)
      {
        // Unknown error.
        Console.WriteLine(e.ToString());
      }

      // Display and wait.
      Console.ReadLine();
    }
  }
}
Imports System.Configuration
Imports System.Web.Configuration

Namespace Samples.Aspnet.SystemWebConfiguration
  Class UsingExpressionBuildCollection
    Public Shared Sub Main()
      Try
        ' Set the path of the config file.
        Dim configPath As String = ""

        ' Get the Web application configuration object.
        Dim config As System.Configuration.Configuration = _
         WebConfigurationManager.OpenWebConfiguration(configPath)

        ' Get the section related object.
        Dim configSection As System.Web.Configuration.CompilationSection = _
         CType(config.GetSection("system.web/compilation"), _
         System.Web.Configuration.CompilationSection)

        ' Display title and info.
        Console.WriteLine("ASP.NET Configuration Info")
        Console.WriteLine()

        ' Display Config details.
        Console.WriteLine("File Path: {0}", _
         config.FilePath)
        Console.WriteLine("Section Path: {0}", _
         configSection.SectionInformation.Name)

        ' Create a new ExpressionBuilder reference.
        Dim myExpressionBuilder As ExpressionBuilder = _
          New ExpressionBuilder("myCustomExpression", "MyCustomExpressionBuilder")
        ' Add an ExpressionBuilder to the configuration.
        configSection.ExpressionBuilders.Add(myExpressionBuilder)

        ' Add an ExpressionBuilder to the configuration.
        Dim myExpressionBuilder2 As ExpressionBuilder = _
         New ExpressionBuilder("myCustomExpression2", "MyCustomExpressionBuilder2")
        configSection.ExpressionBuilders.Add(myExpressionBuilder2)

        ' Display the ExpressionBuilder count.
        Console.WriteLine("ExpressionBuilder Count: {0}", _
          configSection.ExpressionBuilders.Count)

        ' Display the ExpressionBuildersCollection details.
        Dim i = 1
        Dim j = 1
        For Each expressionBuilder As ExpressionBuilder In configSection.ExpressionBuilders()
          Console.WriteLine()
          Console.WriteLine("ExpressionBuilder {0} Details:", i)
          Console.WriteLine("Type: {0}", expressionBuilder.ElementInformation.Type)
          Console.WriteLine("Source: {0}", expressionBuilder.ElementInformation.Source)
          Console.WriteLine("LineNumber: {0}", expressionBuilder.ElementInformation.LineNumber)
          Console.WriteLine("Properties Count: {0}", expressionBuilder.ElementInformation.Properties.Count)
          j = 1
          For Each propertyItem As PropertyInformation In expressionBuilder.ElementInformation.Properties
            Console.WriteLine("Property {0} Name: {1}", j, propertyItem.Name)
            Console.WriteLine("Property {0} Value: {1}", j, propertyItem.Value)
            j = j + 1
          Next
          i = i + 1
        Next

        ' Remove an ExpressionBuilder.
        configSection.ExpressionBuilders.RemoveAt _
         (configSection.ExpressionBuilders.Count - 1)

        ' Remove an ExpressionBuilder.
        configSection.ExpressionBuilders.Remove("myCustomExpression")

        ' Update if not locked.
        If Not configSection.SectionInformation.IsLocked Then
          config.Save()
          Console.WriteLine("** Configuration updated.")
        Else
          Console.WriteLine("** Could not update, section is locked.")
        End If

      Catch e As Exception
        ' Unknown error.
        Console.WriteLine(e.ToString())
      End Try

      ' Display and wait
      Console.ReadLine()
    End Sub
  End Class
End Namespace

Комментарии

Класс ExpressionBuilderCollection не ссылается на фактический элемент в базовом файле конфигурации. Это конструкция, которая позволяет легко получить доступ к содержащейся в ней информации компиляции.

Конструкторы

ExpressionBuilderCollection()

Инициализирует новый экземпляр класса ExpressionBuilderCollection.

Свойства

AddElementName

Возвращает или устанавливает имя ConfigurationElement, связанное с операцией добавления в ConfigurationElementCollection после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
ClearElementName

Возвращает или задает имя ConfigurationElement, связанное с операцией очистки в ConfigurationElementCollection после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
CollectionType

Возвращает тип службы ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
Count

Получает количество элементов коллекции.

(Унаследовано от ConfigurationElementCollection)
CurrentConfiguration

Возвращает ссылку на экземпляр Configuration верхнего уровня, представляющий иерархию конфигурации, к которой относится текущий экземпляр ConfigurationElement.

(Унаследовано от ConfigurationElement)
ElementInformation

Возвращает объект ElementInformation, содержащий неизменяемую информацию и функциональность объекта ConfigurationElement.

(Унаследовано от ConfigurationElement)
ElementName

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

(Унаследовано от ConfigurationElementCollection)
ElementProperty

Возвращает объект ConfigurationElementProperty, представляющий сам объект ConfigurationElement.

(Унаследовано от ConfigurationElement)
EmitClear

Получает или задает значение, указывающее, была ли коллекция очищена.

(Унаследовано от ConfigurationElementCollection)
EvaluationContext

Возвращает объект ContextInformation для объекта ConfigurationElement.

(Унаследовано от ConfigurationElement)
HasContext

Возвращает значение, указывающее, имеет ли свойство CurrentConfiguration значение null.

(Унаследовано от ConfigurationElement)
IsSynchronized

Возвращает значение, показывающее, синхронизирован ли доступ к коллекции.

(Унаследовано от ConfigurationElementCollection)
Item[ConfigurationProperty]

Возвращает или задает свойство или атрибут данного элемента конфигурации.

(Унаследовано от ConfigurationElement)
Item[Int32]

Получает или задает ExpressionBuilder по указанному индексу в коллекции ExpressionBuilderCollection.

Item[String]

Возвращает объект ExpressionBuilder с указанным именем.

LockAllAttributesExcept

Возвращает коллекцию заблокированных атрибутов.

(Унаследовано от ConfigurationElement)
LockAllElementsExcept

Возвращает коллекцию заблокированных элементов.

(Унаследовано от ConfigurationElement)
LockAttributes

Возвращает коллекцию заблокированных атрибутов.

(Унаследовано от ConfigurationElement)
LockElements

Возвращает коллекцию заблокированных элементов.

(Унаследовано от ConfigurationElement)
LockItem

Возвращает или задает значение, указывающее, заблокирован ли элемент.

(Унаследовано от ConfigurationElement)
Properties

Возвращает коллекцию свойств.

(Унаследовано от ConfigurationElement)
RemoveElementName

Получает или задает имя ConfigurationElement, связанное с операцией удаления в ConfigurationElementCollection после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
SyncRoot

Получает объект, используемый для синхронизации доступа к ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
ThrowOnDuplicate

Возвращает значение, указывающее, выдаст ли исключение попытка добавить дубликат ConfigurationElement к ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)

Методы

Add(ExpressionBuilder)

Добавляет объект ExpressionBuilder в коллекцию ExpressionBuilderCollection.

BaseAdd(ConfigurationElement)

Добавляет новый элемент конфигурации в ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
BaseAdd(ConfigurationElement, Boolean)

Добавляет элемент конфигурации в коллекцию элементов конфигурации.

(Унаследовано от ConfigurationElementCollection)
BaseAdd(Int32, ConfigurationElement)

Добавляет элемент конфигурации в коллекцию элементов конфигурации.

(Унаследовано от ConfigurationElementCollection)
BaseClear()

Удаляет все объекты элементов конфигурации из коллекции.

(Унаследовано от ConfigurationElementCollection)
BaseGet(Int32)

Возвращает элемент конфигурации с указанным расположением индекса.

(Унаследовано от ConfigurationElementCollection)
BaseGet(Object)

Возвращает элемент конфигурации с указанным ключом.

(Унаследовано от ConfigurationElementCollection)
BaseGetAllKeys()

Возвращает массив ключей для всех элементов конфигурации, содержащихся в ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
BaseGetKey(Int32)

Получает ключ объекта ConfigurationElement по указанному расположению индекса.

(Унаследовано от ConfigurationElementCollection)
BaseIndexOf(ConfigurationElement)

Указывает индекс заданного объекта ConfigurationElement.

(Унаследовано от ConfigurationElementCollection)
BaseIsRemoved(Object)

Указывает, удален ли ConfigurationElement с указанным ключом из ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
BaseRemove(Object)

Удаляет объект ConfigurationElement из коллекции.

(Унаследовано от ConfigurationElementCollection)
BaseRemoveAt(Int32)

Удаляет объект ConfigurationElement по указанному расположению индекса.

(Унаследовано от ConfigurationElementCollection)
Clear()

Очищает все объекты ExpressionBuilder из коллекции ExpressionBuilderCollection.

CopyTo(ConfigurationElement[], Int32)

Копирует содержимое объекта ConfigurationElementCollection в массив.

(Унаследовано от ConfigurationElementCollection)
CreateNewElement()

При переопределении в производном классе создает новый объект ConfigurationElement.

(Унаследовано от ConfigurationElementCollection)
CreateNewElement(String)

При переопределении в производном классе создает новый элемент ConfigurationElement.

(Унаследовано от ConfigurationElementCollection)
DeserializeElement(XmlReader, Boolean)

Считывает XML из файла конфигурации.

(Унаследовано от ConfigurationElement)
Equals(Object)

Сравнивает ConfigurationElementCollection с указанным объектом.

(Унаследовано от ConfigurationElementCollection)
GetElementKey(ConfigurationElement)

При переопределении в производном классе возвращает ключ указанного элемента конфигурации.

(Унаследовано от ConfigurationElementCollection)
GetEnumerator()

Получает метод IEnumerator, используемый для итерации по ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
GetHashCode()

Получает уникальное значение, представляющее экземпляр ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
GetTransformedAssemblyString(String)

Возвращает преобразованную версию указанного имени сборки.

(Унаследовано от ConfigurationElement)
GetTransformedTypeString(String)

Возвращает преобразованную версию указанного имени типа.

(Унаследовано от ConfigurationElement)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
Init()

Задает объект ConfigurationElement в исходное состояние.

(Унаследовано от ConfigurationElement)
InitializeDefault()

Используется для инициализации набора значений по умолчанию для объекта ConfigurationElement.

(Унаследовано от ConfigurationElement)
IsElementName(String)

Указывает, существует ли указанный ConfigurationElement в ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
IsElementRemovable(ConfigurationElement)

Указывает, может ли указанный объект ConfigurationElement быть удален из ConfigurationElementCollection.

(Унаследовано от ConfigurationElementCollection)
IsModified()

Указывает, был ли изменен ConfigurationElementCollection с момента последнего сохранения или загрузки после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
IsReadOnly()

Указывает, доступен ли объект ConfigurationElementCollection только для чтения.

(Унаследовано от ConfigurationElementCollection)
ListErrors(IList)

Добавляет ошибку "недействительное свойство" в данном объекте ConfigurationElement и всех его дочерних элементах к переданному списку.

(Унаследовано от ConfigurationElement)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnDeserializeUnrecognizedAttribute(String, String)

Возвращает значение, указывающее, встретился ли неизвестный атрибут при десериализации.

(Унаследовано от ConfigurationElement)
OnDeserializeUnrecognizedElement(String, XmlReader)

Приводит к тому, что система конфигурации выдает исключение.

(Унаследовано от ConfigurationElementCollection)
OnRequiredPropertyNotFound(String)

Выдает исключение, если требуемое свойство не найдено.

(Унаследовано от ConfigurationElement)
PostDeserialize()

Вызывается после десериализации.

(Унаследовано от ConfigurationElement)
PreSerialize(XmlWriter)

Вызывается до сериализации.

(Унаследовано от ConfigurationElement)
Remove(String)

Удаляет объект ExpressionBuilder из коллекции ExpressionBuilderCollection.

RemoveAt(Int32)

Удаляет объект ExpressionBuilder из коллекции ExpressionBuilderCollection.

Reset(ConfigurationElement)

Сбрасывает ConfigurationElementCollection в неизмененное состояние после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
ResetModified()

Переустанавливает значение свойства IsModified() в false при переопределении в производном классе.

(Унаследовано от ConfigurationElementCollection)
SerializeElement(XmlWriter, Boolean)

Записывает данные конфигурации в XML-элемент в файле конфигурации после переопределения в производном классе.

(Унаследовано от ConfigurationElementCollection)
SerializeToXmlElement(XmlWriter, String)

Записывает внешние теги данного элемента конфигурации в файл конфигурации при реализации в производном классе.

(Унаследовано от ConfigurationElement)
SetPropertyValue(ConfigurationProperty, Object, Boolean)

Задает для свойства указанное значение.

(Унаследовано от ConfigurationElement)
SetReadOnly()

Устанавливает свойство IsReadOnly() для объекта ConfigurationElementCollection и всех подчиненных элементов.

(Унаследовано от ConfigurationElementCollection)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode)

Отменяет эффект слияния данных конфигурации на разных уровнях иерархии конфигурации.

(Унаследовано от ConfigurationElementCollection)

Явные реализации интерфейса

ICollection.CopyTo(Array, Int32)

Копирует ConfigurationElementCollection в массив.

(Унаследовано от ConfigurationElementCollection)

Методы расширения

Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.

OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.

AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.

AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.

Применяется к

См. также раздел