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, Boolean)

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

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

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

(Унаследовано от 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)

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

Имя Описание
AsParallel(IEnumerable)

Включает параллелизацию запроса.

AsQueryable(IEnumerable)

Преобразует IEnumerable в IQueryable.

Cast<TResult>(IEnumerable)

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

OfType<TResult>(IEnumerable)

Фильтрует элементы IEnumerable на основе указанного типа.

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

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