BindingCollection Classe

Définition

Représente une collection de liaisons.

public ref class BindingCollection sealed : Microsoft::Web::Administration::ConfigurationElementCollectionBase<Microsoft::Web::Administration::Binding ^>
public sealed class BindingCollection : Microsoft.Web.Administration.ConfigurationElementCollectionBase<Microsoft.Web.Administration.Binding>
type BindingCollection = class
    inherit ConfigurationElementCollectionBase<Binding>
Public NotInheritable Class BindingCollection
Inherits ConfigurationElementCollectionBase(Of Binding)
Héritage

Exemples

L’exemple suivant affiche le nombre de chaque liaison à l’écouteur de trace.

void ShowBE(Object propertyToConvert) {

    BindingCollection bindingColl = propertyToConvert as BindingCollection;
    int httpsCnt=0;
    int httpCnt=0;
    int unknownCnt=0;

    foreach (Microsoft.Web.Administration.Binding  bindElem in bindingColl) {
        if (bindElem.Protocol.Equals(
            "https", StringComparison.InvariantCultureIgnoreCase) ) {
            httpsCnt++;
        } else if (bindElem.Protocol.Equals(
            "http", StringComparison.InvariantCultureIgnoreCase) ){
           httpCnt++;
        }
        else 
            unknownCnt++;
    }
    Trace.WriteLine("HTTPS Cnt = " + httpsCnt.ToString());
    Trace.WriteLine("HTTP Cnt = " + httpCnt.ToString());
    Trace.WriteLine("Unknown Cnt = " + unknownCnt.ToString());
} 

L’exemple suivant répertorie chaque liaison pour chaque site sur le serveur.

[ModuleServiceMethod(PassThrough = true)]
public ArrayList GetSiteCollection()
{
    // Use an ArrayList to transfer objects to the client.
    ArrayList arrayOfSitePropertyBags = new ArrayList();

    SiteCollection siteCollection = 
        base.ManagementUnit.ServerManager.Sites;
    Site siteToModify = null;
    string newbindinginformation = String.Empty;
    byte[] newcertificateHash = null;
    string newcertificateStoreName = String.Empty;
    Int32 bindingIndex = -1;
    // Find a binding with an https protocol, if one exists.
    // Capture the site, certificate hash, and the certificate store name.
    foreach (Site site in siteCollection)
    {
        PropertyBag siteBag = new PropertyBag();

        siteBag[TestDemoGlobals.SiteName] = site.Name;
        siteBag[TestDemoGlobals.SiteId] = site.Id;

        ArrayList siteBindingsArray = new ArrayList();
        foreach (Microsoft.Web.Administration.Binding binding in site.Bindings)
        {
            PropertyBag bindingBag = new PropertyBag();

            bindingBag[TestDemoGlobals.BindingInformation] = binding.BindingInformation;
            if (binding.Protocol == "https")
            {
                // Capture certificate information for binding to be created later
                siteToModify = site;
                newcertificateHash = binding.CertificateHash;
                newcertificateStoreName = binding.CertificateStoreName;

                // Add certificate data to binding property bag
                bindingBag[TestDemoGlobals.BindingCertificateHashType] = 
                    binding.CertificateHash.ToString();
                string hashString = String.Empty;
                foreach (System.Byte certhashbyte in binding.CertificateHash)
                {
                    hashString += certhashbyte.ToString() + " ";
                }
                bindingBag[TestDemoGlobals.BindingCertificateHash] = hashString;
                bindingBag[TestDemoGlobals.BindingCertificateHashStoreName] = binding.CertificateStoreName;
            }
            bindingBag[TestDemoGlobals.BindingProtocol] = binding.Protocol;
            bindingBag[TestDemoGlobals.BindingEndPoint] = binding.EndPoint;
            bindingBag[TestDemoGlobals.BindingHost] = binding.Host;
            bindingBag[TestDemoGlobals.BindingIsIPPortHostBinding] = binding.IsIPPortHostBinding;
            bindingBag[TestDemoGlobals.BindingToString] = binding.ToString();
            bindingBag[TestDemoGlobals.BindingUseDsMapper] = binding.UseDsMapper;

            siteBindingsArray.Add(bindingBag);
        }

        siteBag[TestDemoGlobals.BindingsArrayList] = siteBindingsArray;

        arrayOfSitePropertyBags.Add(siteBag);
    }
    // Adding a duplicate binding throws an error.
    if (siteToModify != null)
    {
        newbindinginformation = "*:448:TestingSite";
        try
        {
            // Add this binding. It does not already exist. 
            siteToModify.Bindings.Add(newbindinginformation, newcertificateHash, newcertificateStoreName);
        }
        catch
        {
            // Remove this binding. It already exists.
            foreach (Microsoft.Web.Administration.Binding binding in siteToModify.Bindings)
            {
                if (binding.BindingInformation == newbindinginformation)
                {
                    bindingIndex = siteToModify.Bindings.IndexOf(binding);
                }
            }
            if (bindingIndex != -1)
            {
                siteToModify.Bindings.RemoveAt(bindingIndex);
            }
        }
        // Update information and save in Administration.config file.
        ManagementUnit.Update();
    }
    return arrayOfSitePropertyBags;
}

Remarques

Vous pouvez afficher les liaisons d’un site dans la boîte de dialogue Liaisons de site du Gestionnaire des services Internet. Pour ouvrir la boîte de dialogue, cliquez avec le bouton droit sur un nœud de site dans le volet Connexions , puis cliquez sur Modifier les liaisons. La boîte de dialogue Liaisons de site affiche les Binding objets dans l’objet BindingCollection pour le site.

Les modifications apportées à l’objet BindingCollection ne sont pas répercutées dans le Gestionnaire des services Internet tant que le fichier ApplicationHost.config n’est pas mis à jour par un appel à la Microsoft.Web.Management.Server.ManagementUnit.Update méthode .

Propriétés

AllowsAdd

Obtient une valeur indiquant si un nom d’élément add est défini dans le schéma de collection actuel.

(Hérité de ConfigurationElementCollectionBase<T>)
AllowsClear

Obtient une valeur indiquant si un nom d’élément clear est défini dans le schéma de collection actuel.

(Hérité de ConfigurationElementCollectionBase<T>)
AllowsRemove

Obtient une valeur indiquant si un nom d’élément remove est défini dans le schéma de collection actuel.

(Hérité de ConfigurationElementCollectionBase<T>)
Attributes

Obtient une collection d’attributs de configuration qui contient la liste des attributs pour cet élément.

(Hérité de ConfigurationElement)
ChildElements

Obtient tous les éléments enfants de l’élément actuel.

(Hérité de ConfigurationElement)
Count

Obtient le nombre d’éléments de la collection.

(Hérité de ConfigurationElementCollectionBase<T>)
ElementTagName

Représente une collection de liaisons.

(Hérité de ConfigurationElement)
IsLocallyStored

Obtient une valeur indiquant si l’élément de configuration est stocké dans un fichier de configuration particulier.

(Hérité de ConfigurationElement)
Item[Int32]

Obtient un élément de configuration à l’index spécifié.

(Hérité de ConfigurationElementCollectionBase<T>)
Item[String]

Obtient ou définit un attribut portant le nom spécifié.

(Hérité de ConfigurationElement)
Methods

Obtient une collection de méthodes pour l’élément de configuration.

(Hérité de ConfigurationElement)
RawAttributes

Représente une collection de liaisons.

(Hérité de ConfigurationElement)
Schema

Obtient le schéma qui décrit la collection d’éléments de configuration.

(Hérité de ConfigurationElementCollectionBase<T>)

Méthodes

Add(Binding)

Ajoute une liaison sécurisée à la fin de la collection.

Add(String, Byte[], String)

Ajoute une liaison sécurisée à la collection de liaisons.

Add(String, Byte[], String, SslFlags)

Représente une collection de liaisons.

Add(String, String)

Ajoute une liaison avec le protocole et les informations de liaison spécifiés à la collection de liaisons.

Add(T)

Ajoute un élément de configuration à la fin de la collection actuelle.

(Hérité de ConfigurationElementCollectionBase<T>)
AddAt(Int32, T)

Ajoute un élément de configuration à la collection actuelle à l’index spécifié.

(Hérité de ConfigurationElementCollectionBase<T>)
Clear()

Efface tous les éléments de configuration de la collection actuelle.

(Hérité de ConfigurationElementCollectionBase<T>)
CreateElement()

Crée un élément enfant pour la collection actuelle.

(Hérité de ConfigurationElementCollectionBase<T>)
CreateElement(String)

Crée un élément enfant à l’aide du nom spécifié.

(Hérité de ConfigurationElementCollectionBase<T>)
CreateNewElement(String)

Crée un élément à l’aide du nom d’élément spécifié.

(Hérité de ConfigurationElementCollectionBase<T>)
Delete()

Représente une collection de liaisons.

(Hérité de ConfigurationElement)
GetAttribute(String)

Retourne un ConfigurationAttribute objet qui représente l’attribut demandé.

(Hérité de ConfigurationElement)
GetAttributeValue(String)

Retourne la valeur de l'attribut spécifié.

(Hérité de ConfigurationElement)
GetChildElement(String)

Retourne un élément enfant qui se trouve sous l’élément de configuration actuel et qui a le nom spécifié.

(Hérité de ConfigurationElement)
GetChildElement(String, Type)

Retourne un élément enfant qui se trouve sous l’élément de configuration actuel et qui a le nom et le type spécifiés.

(Hérité de ConfigurationElement)
GetCollection()

Retourne la collection par défaut pour l’élément de configuration actuel.

(Hérité de ConfigurationElement)
GetCollection(String)

Retourne tous les éléments de configuration qui appartiennent à l’élément de configuration actuel.

(Hérité de ConfigurationElement)
GetCollection(String, Type)

Retourne l’élément de configuration qui a le nom et le type spécifiés et qui se trouve sous l’élément de configuration actuel.

(Hérité de ConfigurationElement)
GetCollection(Type)

Retourne l’élément de configuration qui a le type spécifié et qui se trouve sous l’élément de configuration actuel.

(Hérité de ConfigurationElement)
GetEnumerator()

Retourne un énumérateur qui itère au sein d’une collection.

(Hérité de ConfigurationElementCollectionBase<T>)
GetMetadata(String)

Retourne des valeurs de métadonnées à partir du schéma d’élément.

(Hérité de ConfigurationElement)
IndexOf(T)

Détermine l’index d’un élément de la collection.

(Hérité de ConfigurationElementCollectionBase<T>)
Remove(Binding)

Supprime la liaison spécifiée de la collection de liaisons.

Remove(Binding, Boolean)

Représente une collection de liaisons.

Remove(T)

Supprime la première occurrence d’un élément de la collection.

(Hérité de ConfigurationElementCollectionBase<T>)
RemoveAt(Int32)

Supprime une liaison à l’index spécifié.

SetAttributeValue(String, Object)

Définit la valeur de l'attribut spécifié.

(Hérité de ConfigurationElement)
SetMetadata(String, Object)

Définit les valeurs de métadonnées du schéma d’élément.

(Hérité de ConfigurationElement)

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Copie les éléments de la collection dans un tableau, en commençant au niveau d’un index de tableau particulier.

(Hérité de ConfigurationElementCollectionBase<T>)
ICollection.Count

Représente une collection de liaisons.

(Hérité de ConfigurationElementCollectionBase<T>)
ICollection.IsSynchronized

Représente une collection de liaisons.

(Hérité de ConfigurationElementCollectionBase<T>)
ICollection.SyncRoot

Représente une collection de liaisons.

(Hérité de ConfigurationElementCollectionBase<T>)
IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère au sein de la collection.

(Hérité de ConfigurationElementCollectionBase<T>)

S’applique à