AssemblyCollection Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje kolekci AssemblyInfo objektů. Tato třída se nemůže dědit.
public ref class AssemblyCollection sealed : System::Configuration::ConfigurationElementCollection
[System.Configuration.ConfigurationCollection(typeof(System.Web.Configuration.AssemblyInfo))]
public sealed class AssemblyCollection : System.Configuration.ConfigurationElementCollection
[<System.Configuration.ConfigurationCollection(typeof(System.Web.Configuration.AssemblyInfo))>]
type AssemblyCollection = class
inherit ConfigurationElementCollection
Public NotInheritable Class AssemblyCollection
Inherits ConfigurationElementCollection
- Dědičnost
- Atributy
Příklady
Tato část obsahuje dva příklady kódu. První ukazuje, jak deklarativní zadat hodnoty pro několik vlastností AssemblyCollection třídy. Druhá ukazuje, jak používat členy AssemblyCollection třídy.
Následující příklad konfiguračního AssemblyCollection souboru ukazuje, jak deklarativní zadat hodnoty pro několik vlastností třídy.
<system.web>
<compilation>
<assemblies>
<add assembly="mscorlib" />
<add assembly="System, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" />
<add assembly="System.Configuration, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Web, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Data, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" />
<add assembly="System.Web.Services, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Xml, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" />
<add assembly="System.Drawing, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.EnterpriseServices, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Web.Mobile, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Web.UI.MobileControls.Adapters,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="*" />
</assemblies>
</compilation>
</system.web>
Následující příklad kódu ukazuje, jak používat členy AssemblyCollection třídy.
#region Using directives
using System;
using System.Configuration;
using System.Web.Configuration;
#endregion
namespace Samples.Aspnet.SystemWebConfiguration
{
class UsingAssemblyCollection
{
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 assembly reference.
AssemblyInfo myAssembly =
new AssemblyInfo("MyAssembly, Version=1.0.0000.0, " +
"Culture=neutral, Public KeyToken=b03f5f7f11d50a3a");
// Add an assembly to the configuration.
configSection.Assemblies.Add(myAssembly);
// Add a second assembly reference.
AssemblyInfo myAssembly2 = new AssemblyInfo("MyAssembly2");
configSection.Assemblies.Add(myAssembly2);
// Assembly Collection
int i = 1;
int j = 1;
foreach (AssemblyInfo assemblyItem in configSection.Assemblies)
{
Console.WriteLine();
Console.WriteLine("Assemblies {0} Details:", i);
Console.WriteLine("Type: {0}", assemblyItem.ElementInformation.Type);
Console.WriteLine("Source: {0}", assemblyItem.ElementInformation.Source);
Console.WriteLine("LineNumber: {0}", assemblyItem.ElementInformation.LineNumber);
Console.WriteLine("Properties Count: {0}",
assemblyItem.ElementInformation.Properties.Count);
j = 1;
foreach (PropertyInformation propertyItem in assemblyItem.ElementInformation.Properties)
{
Console.WriteLine("Property {0} Name: {1}", j, propertyItem.Name);
Console.WriteLine("Property {0} Value: {1}", j, propertyItem.Value);
j++;
}
i++;
}
// Remove an assembly.
configSection.Assemblies.Remove("MyAssembly, Version=1.0.0000.0, " +
"Culture=neutral, Public KeyToken=b03f5f7f11d50a3a");
// Remove an assembly.
configSection.Assemblies.RemoveAt(configSection.Assemblies.Count - 1);
// 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 UsingAssemblyCollection
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 assembly reference.
Dim myAssembly As AssemblyInfo = New AssemblyInfo("MyAssembly, " + _
"Version=1.0.0000.0, Culture=neutral, Public KeyToken=b03f5f7f11d50a3a")
' Add an assembly to the configuration.
configSection.Assemblies.Add(myAssembly)
' Add a second assembly reference.
Dim myAssembly2 As AssemblyInfo = New AssemblyInfo("MyAssembly2")
configSection.Assemblies.Add(myAssembly2)
' Assembly Collection
Dim i = 1
Dim j = 1
For Each assemblyItem As AssemblyInfo In configSection.Assemblies
Console.WriteLine()
Console.WriteLine("Assemblies {0} Details:", i)
Console.WriteLine("Type: {0}", assemblyItem.ElementInformation.Type)
Console.WriteLine("Source: {0}", assemblyItem.ElementInformation.Source)
Console.WriteLine("LineNumber: {0}", assemblyItem.ElementInformation.LineNumber)
Console.WriteLine("Properties Count: {0}", assemblyItem.ElementInformation.Properties.Count)
j = 1
For Each propertyItem As PropertyInformation In assemblyItem.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 assembly.
configSection.Assemblies.Remove("MyAssembly, Version=1.0.0000.0, " + _
"Culture=neutral, Public KeyToken=b03f5f7f11d50a3a")
' Remove an assembly.
configSection.Assemblies.RemoveAt(configSection.Assemblies.Count - 1)
' 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
Poznámky
Třída AssemblyCollection neodkazuje na žádný skutečný prvek v podkladovém konfiguračním souboru. Jedná se o konstruktor, který umožňuje přístup k informacím o sestavení, které obsahuje.
Konstruktory
| Name | Description |
|---|---|
| AssemblyCollection() |
Inicializuje novou instanci AssemblyCollection třídy. |
Vlastnosti
| Name | Description |
|---|---|
| AddElementName |
Získá nebo nastaví název ConfigurationElement přidružit k operaci přidání v ConfigurationElementCollection při přepsání v odvozené třídě. (Zděděno od ConfigurationElementCollection) |
| ClearElementName |
Získá nebo nastaví název pro ConfigurationElement přidružit k jasné operaci v ConfigurationElementCollection při přepsání v odvozené třídě. (Zděděno od ConfigurationElementCollection) |
| CollectionType |
Získá typ ConfigurationElementCollection. (Zděděno od ConfigurationElementCollection) |
| Count |
Získá počet prvků v kolekci. (Zděděno od ConfigurationElementCollection) |
| CurrentConfiguration |
Získá odkaz na instanci nejvyšší úrovně Configuration, která představuje hierarchii konfigurace, do které patří aktuální instance ConfigurationElement. (Zděděno od ConfigurationElement) |
| ElementInformation |
Získá ElementInformation objekt, který obsahuje neuzpůsobitelné informace a funkce ConfigurationElement objektu. (Zděděno od ConfigurationElement) |
| ElementName |
Získá název použitý k identifikaci této kolekce elementů v konfiguračním souboru při přepsání v odvozené třídě. (Zděděno od ConfigurationElementCollection) |
| ElementProperty |
Získá ConfigurationElementProperty objekt, který představuje ConfigurationElement objekt sám. (Zděděno od ConfigurationElement) |
| EmitClear |
Získá nebo nastaví hodnotu, která určuje, zda kolekce byla vymazána. (Zděděno od ConfigurationElementCollection) |
| EvaluationContext |
Získá objekt ContextInformation pro objekt ConfigurationElement. (Zděděno od ConfigurationElement) |
| HasContext |
Získá hodnotu, která určuje, zda CurrentConfiguration vlastnost je |
| IsSynchronized |
Získá hodnotu určující, zda je přístup ke kolekci synchronizován. (Zděděno od ConfigurationElementCollection) |
| Item[ConfigurationProperty] |
Získá nebo nastaví vlastnost nebo atribut tohoto elementu konfigurace. (Zděděno od ConfigurationElement) |
| Item[Int32] |
Získá nebo nastaví na AssemblyInfo zadaném indexu v objektu AssemblyCollection. |
| Item[String] |
Získá položku identifikovanou zadaným názvem sestavení. |
| LockAllAttributesExcept |
Získá kolekci uzamčených atributů. (Zděděno od ConfigurationElement) |
| LockAllElementsExcept |
Získá kolekci uzamčených prvků. (Zděděno od ConfigurationElement) |
| LockAttributes |
Získá kolekci uzamčených atributů. (Zděděno od ConfigurationElement) |
| LockElements |
Získá kolekci uzamčených prvků. (Zděděno od ConfigurationElement) |
| LockItem |
Získá nebo nastaví hodnotu označující, zda je prvek uzamčen. (Zděděno od ConfigurationElement) |
| Properties |
Získá kolekci vlastností. (Zděděno od ConfigurationElement) |
| RemoveElementName |
Získá nebo nastaví název ConfigurationElement přidružit k operaci remove v ConfigurationElementCollection při přepsání v odvozené třídě. (Zděděno od ConfigurationElementCollection) |
| SyncRoot |
Získá objekt použitý k synchronizaci přístupu k ConfigurationElementCollection. (Zděděno od ConfigurationElementCollection) |
| ThrowOnDuplicate |
Získá hodnotu označující, zda pokus přidat duplicitní ConfigurationElement do ConfigurationElementCollection způsobí vyvolání výjimky. (Zděděno od ConfigurationElementCollection) |
Metody
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Zkopíruje ConfigurationElementCollection do pole. (Zděděno od ConfigurationElementCollection) |
Metody rozšíření
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Umožňuje paralelizaci dotazu. |
| AsQueryable(IEnumerable) |
Převede IEnumerable na IQueryable. |
| Cast<TResult>(IEnumerable) |
Přetypuje prvky IEnumerable na zadaný typ. |
| OfType<TResult>(IEnumerable) |
Filtruje prvky IEnumerable na základě zadaného typu. |