Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

EmbeddedMailObjectsCollection, classe

Représente un ensemble ordonné d'objets EmbeddedMailObject.

System.Object
  System.Collections.CollectionBase
    System.Web.UI.WebControls.EmbeddedMailObjectsCollection

Espace de noms :  System.Web.UI.WebControls
Assembly :  System.Web (dans System.Web.dll)
public sealed class EmbeddedMailObjectsCollection : CollectionBase

Le type EmbeddedMailObjectsCollection expose les membres suivants.

  Nom Description
Méthode publique EmbeddedMailObjectsCollection Initialise une nouvelle instance de la classe EmbeddedMailObjectsCollection.
Début
  Nom Description
Propriété publique Capacity Obtient ou définit le nombre d'éléments que CollectionBase peut contenir. (Hérité de CollectionBase.)
Propriété publique Count Obtient le nombre d'éléments contenus dans l'instance de CollectionBase. Cette propriété ne peut pas être substituée. (Hérité de CollectionBase.)
Propriété protégée InnerList Obtient ArrayList contenant la liste des éléments dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Propriété publique Item Retourne un élément spécifique d'un EmbeddedMailObjectsCollection, identifié par sa position.
Propriété protégée List Obtient IList contenant la liste des éléments dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Début
  Nom Description
Méthode publique Add Ajoute un EmbeddedMailObject à la fin de la collection EmbeddedMailObjectsCollection.
Méthode publique Clear Supprime tous les objets de l'instance de CollectionBase. Elle ne peut pas être substituée. (Hérité de CollectionBase.)
Méthode publique Contains Détermine si EmbeddedMailObjectsCollection contient un EmbeddedMailObject spécifique.
Méthode publique CopyTo Copie la collection d'objets dans une instance unidimensionnelle Array en commençant à l'index spécifié dans le tableau.
Méthode publique Equals(Object) Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de netto***ge avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetEnumerator Retourne un énumérateur qui itère au sein de CollectionBase. (Hérité de CollectionBase.)
Méthode publique GetHashCode Sert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique IndexOf Détermine l'index d'un EmbeddedMailObject spécifique dans EmbeddedMailObjectsCollection.
Méthode publique Insert Insère un EmbeddedMailObject dans l'objet EmbeddedMailObjectsCollection à la position d'index spécifiée.
Méthode protégée MemberwiseClone Crée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode protégée OnClear Exécute des processus personnalisés supplémentaires lors de l'effacement du contenu de l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnClearComplete Exécute des processus personnalisés supplémentaires après l'effacement du contenu de l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnInsert Exécute les processus personnalisés supplémentaires avant l'insertion d'un nouvel élément dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnInsertComplete Exécute les processus personnalisés supplémentaires après l'insertion d'un nouvel élément dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnRemove Exécute des processus personnalisés supplémentaires lors de la suppression d'un élément de l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnRemoveComplete Exécute des processus personnalisés supplémentaires après la suppression d'un élément de l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnSet Exécute des processus personnalisés supplémentaires avant la définition d'une valeur dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnSetComplete Exécute des processus personnalisés supplémentaires après la définition d'une valeur dans l'instance de CollectionBase. (Hérité de CollectionBase.)
Méthode protégée OnValidate Exécute des processus personnalisés supplémentaires lors de la validation d'une valeur. (Hérité de CollectionBase.)
Méthode publique Remove Supprime la première occurrence du EmbeddedMailObject spécifié dans EmbeddedMailObjectsCollection.
Méthode publique RemoveAt Supprime l'élément à l'index spécifié de l'instance de CollectionBase. Cette méthode n'est pas substituable. (Hérité de CollectionBase.)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Début
  Nom Description
Implémentation d'interface explicite Méthode privée ICollection.CopyTo Copie l'ensemble du CollectionBase vers un Array unidimensionnel compatible, en commençant à l'index spécifié du tableau cible. (Hérité de CollectionBase.)
Implémentation d'interface explicite Propriété privée ICollection.IsSynchronized Obtient une valeur indiquant si l'accès à CollectionBase est synchronisé (thread-safe). (Hérité de CollectionBase.)
Implémentation d'interface explicite Propriété privée ICollection.SyncRoot Obtient un objet qui peut être utilisé pour synchroniser l'accès au CollectionBase. (Hérité de CollectionBase.)
Implémentation d'interface explicite Méthode privée IList.Add Ajoute un objet à la fin de CollectionBase. (Hérité de CollectionBase.)
Implémentation d'interface explicite Méthode privée IList.Contains Détermine si CollectionBase contient un élément spécifique. (Hérité de CollectionBase.)
Implémentation d'interface explicite Méthode privée IList.IndexOf Recherche le Object spécifié et retourne l'index de base zéro de la première occurrence dans l'ensemble du CollectionBase. (Hérité de CollectionBase.)
Implémentation d'interface explicite Méthode privée IList.Insert Insère un élément dans CollectionBase à l'index spécifié. (Hérité de CollectionBase.)
Implémentation d'interface explicite Propriété privée IList.IsFixedSize Obtient une valeur indiquant si CollectionBase est de taille fixe. (Hérité de CollectionBase.)
Implémentation d'interface explicite Propriété privée IList.IsReadOnly Obtient une valeur indiquant si CollectionBase est en lecture seule. (Hérité de CollectionBase.)
Implémentation d'interface explicite Propriété privée IList.Item Obtient ou définit l'élément situé à l'index spécifié. (Hérité de CollectionBase.)
Implémentation d'interface explicite Méthode privée IList.Remove Supprime la première occurrence d'un objet spécifique de CollectionBase. (Hérité de CollectionBase.)
Début

EmbeddedMailObjectsCollection stocke des références aux éléments qui seront incorporés dans un message électronique. Ces éléments incorporés peuvent être des fichiers image, par exemple des logos de société. EmbeddedMailObjectsCollection est utilisé par la propriété EmbeddedObjects de l'objet MailDefinition.

Les messages électroniques qui acceptent des objets incorporés sont configurables dans les contrôles Web suivants, en définissant leurs propriétés MailDefinition de façon déclarative :

Remarque Remarque

Les valeurs dans les objets EmbeddedMailObject et EmbeddedMailObjectsCollection ne sont pas stockées dans l'état d'affichage. Cela permet de se protéger des utilisateurs malveillants qui obtiennent des informations sur le chemin d'accès de votre serveur.

L'exemple de code suivant montre une page ASP.NET qui utilise un contrôle Web ChangePassword, et inclut un gestionnaire d'événements pour l'événement SendingMail nommé SendingMail. Cet exemple de code suppose que le site Web ASP.NET a été configuré pour utiliser l'appartenance d'ASP.NET et l'authentification par formulaire, et qu'un utilisateur dont vous connaissez le nom et le mot de passe a été créé. Pour plus d'informations, consultez Comment : implémenter une simple authentification par formulaire.

Si la modification du mot de passe réussit, le code du gestionnaire d'événements SendingMail tente d'envoyer un message électronique à l'utilisateur pour confirmer la modification. Le protocole SMTP doit déjà être configuré sur le serveur pour que cet exemple de code puisse fonctionner. Pour plus d'informations sur la configuration d'un serveur SMTP, consultez Comment : installer et configurer des serveurs virtuels SMTP dans IIS 6.0. Pour les besoins de cet exemple, il n'est pas nécessaire de configurer un serveur SMTP ; l'exemple est construit pour tester le fait qu'une défaillance entraîne l'envoi d'un message électronique.

Si le serveur de messagerie n'est pas configuré correctement ou qu'une autre erreur se produit et que le message électronique ne peut pas être envoyé, la fonction SendMailError est appelée. Un message s'affiche à l'attention de l'utilisateur. De plus, un événement est enregistré dans le journal des événements de l'application Windows en faisant l'hypothèse qu'une source d'événements intitulée MySamplesSite existe déjà. Consultez l'exemple de code ci-dessous pour créer la source d'événements spécifiée. Pour plus d'informations sur la création d'une source d'événements, consultez Gestion des événements serveur dans les pages Web ASP.NET. La valeur true est affectée à la propriété Handled de l'objet SendMailErrorEventArgs pour indiquer que l'erreur a été gérée.


<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void MySendingMail(object sender, MailMessageEventArgs e)
  {
    Message1.Text = "Sent mail to you to confirm the password change.";
  }

  void MySendMailError(object sender, SendMailErrorEventArgs e)
  {
    Message1.Text = "Could not send email to confirm password change.";

    // The MySamplesSite event source has already been created by an administrator.
    System.Diagnostics.EventLog myLog = new System.Diagnostics.EventLog();
    myLog.Log = "Application";
    myLog.Source = "MySamplesSite";
    myLog.WriteEntry(
        "Sending mail via SMTP failed with the following error: " + 
        e.Exception.Message.ToString(), 
        System.Diagnostics.EventLogEntryType.Error);

    e.Handled = true;
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>ChangePassword including a SendMailError Event</title>
</head>
<body>
  <form id="form1" runat="server">
  <div style="text-align:center">

    <h1>ChangePassword</h1>

    <asp:LoginView ID="LoginView1" Runat="server" 
      Visible="true">
      <LoggedInTemplate>
        <asp:LoginName ID="LoginName1" Runat="server" FormatString="You are logged in as {0}." />
        <br />
      </LoggedInTemplate>
      <AnonymousTemplate>
        You are not logged in
      </AnonymousTemplate>
    </asp:LoginView><br />

    <asp:ChangePassword ID="ChangePassword1" Runat="server"
      BorderStyle="Solid" 
      BorderWidth="1" 
      CancelDestinationPageUrl="~/Default.aspx" 
      DisplayUserName="true"
      OnSendingMail="MySendingMail" 
      OnSendMailError="MySendMailError" 
      ContinueDestinationPageUrl="~/Default.aspx" >
      <MailDefinition 
        BodyFileName="~\MailFiles\ChangePasswordMail.htm" 
        Subject="Activity information for you">
        <EmbeddedObjects>
          <asp:EmbeddedMailObject Name="LoginGif" Path="~\MailFiles\Login.gif" />
          <asp:EmbeddedMailObject Name="PrivacyNoticeTxt" Path="~\MailFiles\PrivacyNotice.txt" />
        </EmbeddedObjects>
      </MailDefinition>
    </asp:ChangePassword><br />

    <asp:Label ID="Message1" Runat="server" ForeColor="Red" /><br />

    <asp:HyperLink ID="HyperLink1" Runat="server" 
      NavigateUrl="~/Default.aspx">
      Home
    </asp:HyperLink>

  </div>
  </form>
</body>
</html>


Utilisez l'exemple de code suivant si vous devez ajouter par programme la source d'événements nommée MySamplesSite au journal d'applications. Cette source d'événements doit exister pour que le premier exemple de code fonctionne correctement. L'exemple de code suivant requiert des privilèges d'administrateur.


#region Using directives

using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;

#endregion

namespace CreateEventSource
{
    class Program
    {
        static void Main(string[] args)
        {

            try
            {
                // Create the source, if it does not already exist.
                if (!EventLog.SourceExists("MySamplesSite"))
                {
                    EventLog.CreateEventSource("MySamplesSite", "Application");
                    Console.WriteLine("Creating Event Source");
                }

                // Create an EventLog instance and assign its source.
                EventLog myLog = new EventLog();
                myLog.Source = "MySamplesSite";

                // Write an informational entry to the event log.    
                myLog.WriteEntry("Testing writing to event log.");

                Console.WriteLine("Message written to event log.");
            }
            catch (Exception e)
            {
                Console.WriteLine("Exception:");
                Console.WriteLine("{0}", e.ToString());
            }
        }
    }
}


L'exemple de code suivant peut être utilisé comme fichier ChangePasswordMail.htm pour l'exemple de code précédent.

Note de sécurité Note de sécurité

L'envoi de noms de comptes d'utilisateur ou de mots de passe dans une messagerie électronique constitue une menace potentielle pour la sécurité. Les messages électroniques sont envoyés en général sous forme de texte brut et peuvent être lus par des applications réseau particulières en quête d'intrusion. Pour améliorer la sécurité, utilisez les atténuations décrites dans Sécurisation des contrôles de connexion.

<html>
<head><title></title></head>
<body>
<form>

  <h1>Your password for the account named &quot;<%Username%>&quot; has changed.</h1>

  <p>
  If you did not initiate this change, please call 1-206-555-0100.
  </p>
  
  <p>
  <a href="http://www.contoso.com/login.aspx">
    <img src="cid:LoginGif" alt="Log In" />
  </a> 
  </p>
  
  <p>
  Please read our attached Privacy Notice.
  </p>

</form>
</body>
</html>

.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ