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ли |
| 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() свойства |
| 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 на основе указанного типа. |