EmbeddedMailObjectsCollection Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sıralı bir nesne kümesini EmbeddedMailObject temsil eder.
public ref class EmbeddedMailObjectsCollection sealed : System::Collections::CollectionBase
public sealed class EmbeddedMailObjectsCollection : System.Collections.CollectionBase
type EmbeddedMailObjectsCollection = class
inherit CollectionBase
Public NotInheritable Class EmbeddedMailObjectsCollection
Inherits CollectionBase
- Devralma
Örnekler
Aşağıdaki kod örneği, Web denetimi kullanan ChangePassword bir ASP.NET sayfasını gösterir ve adlı SendingMail
olay için bir olay işleyicisi SendingMail içerir. Kod örneği, ASP.NET Web sitesinin ASP.NET üyeliği ve Forms kimlik doğrulamasını kullanacak şekilde yapılandırıldığını ve adı ve parolası sizin için bilinen bir kullanıcı oluşturulduğunu varsayar. Daha fazla bilgi için bkz . Nasıl yapılır: Basit Form Kimlik Doğrulaması Uygulama.
Parola değişikliği başarılı olursa, olay işleyicisindeki SendingMail
kod değişikliği onaylamak için kullanıcıya bir e-posta iletisi göndermeyi dener. Bu kod örneğinin çalışması için sunucuda SMTP zaten yapılandırılmış olmalıdır. SMTP sunucusunu yapılandırma hakkında bilgi için bkz . Nasıl yapılır: IIS 6.0'da SMTP Sanal Sunucularını Yükleme ve Yapılandırma. Bu örneğin amaçları doğrultusunda, bir SMTP sunucusu yapılandırmak gerekli değildir; örnek, e-posta iletisi gönderme hatası olup olmadığını test etmek için oluşturulur.
Posta sunucusu doğru yapılandırılmamışsa veya başka bir hata oluşursa ve e-posta iletisi gönderilemiyorsa işlev SendMailError
çağrılır. Kullanıcıya bir ileti görüntülenir. Ayrıca, MySamplesSite adlı bir olay kaynağının zaten var olduğu varsayımıyla Bir olay Windows Uygulaması olay günlüğüne kaydedilir. Belirtilen olay kaynağını oluşturmak için aşağıdaki kod örneğine bakın. Olay kaynağı oluşturma hakkında daha fazla bilgi için bkz. ASP.NET Web Forms Sayfalarında Sunucu Olay İşleme.
Handled nesnesinin özelliği, hatanın SendMailErrorEventArgs işlendiğini belirtmek için olarak ayarlanırtrue
.
<%@ 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>
<%@ Page Language="VB" 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">
Public Sub MySendingMail(ByVal Sender As Object, ByVal e As MailMessageEventArgs)
Message1.Text = "Sent mail to you to confirm the password change."
End Sub
Public Sub MySendMailError(ByVal Sender As Object, ByVal e As SendMailErrorEventArgs)
Message1.Text = "Could not send mail to confirm the password change."
' The MySamplesSite event source has already been created by an administrator.
Dim myLog As 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
End Sub
</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>
Uygulama günlüğünüzde MySamplesSite adlı olay kaynağını program aracılığıyla eklemeniz gerekiyorsa aşağıdaki kod örneğini kullanın. İlk kod örneğinin düzgün çalışması için bu olay kaynağının mevcut olması gerekir. Aşağıdaki kod örneği Yönetici ayrıcalıkları gerektirir.
#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());
}
}
}
}
Imports System.Collections.Generic
Imports System.Text
Imports System.Diagnostics
Namespace CreateEventSource
Class Program
Sub Main()
Try
' Create the source, if it does not already exist.
If Not (EventLog.SourceExists("MySamplesSite")) Then
EventLog.CreateEventSource("MySamplesSite", "Application")
Console.WriteLine("Creating Event Source")
End If
' Create an EventLog instance and assign its source.
Dim myLog As 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 e As Exception
Console.WriteLine("Exception:")
Console.WriteLine(e.ToString)
End Try
End Sub
End Class
End Namespace
Aşağıdaki örnek kod, önceki örnek kod için ChangePasswordMail.htm dosyası olarak kullanılabilir.
Önemli
Kullanıcı hesabı adlarını veya parolalarını e-postayla göndermek olası bir güvenlik tehdididir. E-posta iletileri genellikle düz metin olarak gönderilir ve özel ağ "algılama" uygulamaları tarafından okunabilir. Güvenliği geliştirmek için Oturum Açma Denetimlerinin Güvenliğini Sağlama bölümünde açıklanan risk azaltmaları kullanın.
<html>
<head><title></title></head>
<body>
<form>
<h1>Your password for the account named "<%Username%>" 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>
Açıklamalar
Bir EmbeddedMailObjectsCollection e-posta iletisine eklenecek öğelere başvurular depolar. Eklenen öğeler, şirket logoları gibi görüntü dosyaları olabilir. EmbeddedMailObjectsCollection, nesnesinin EmbeddedObjects özelliği MailDefinition tarafından kullanılır.
Katıştırılmış nesnelere izin veren e-posta iletileri, özelliklerini bildirimli olarak ayarlayarak aşağıdaki Web denetimlerinde MailDefinition yapılandırılabilir:
Not
ve EmbeddedMailObjectsCollection nesnelerindeki EmbeddedMailObject değerler görünüm durumunda depolanmaz. Bu, sunucunuz için yol bilgilerini bulan kötü amaçlı kullanıcılara karşı koruma sağlar.
Oluşturucular
EmbeddedMailObjectsCollection() |
EmbeddedMailObjectsCollection sınıfının yeni bir örneğini başlatır. |
Özellikler
Capacity |
öğesinin içerebileceği öğe CollectionBase sayısını alır veya ayarlar. (Devralındığı yer: CollectionBase) |
Count |
Örnekte bulunan CollectionBase öğelerin sayısını alır. Bu özellik geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
InnerList |
Örnekteki öğelerin CollectionBase listesini içeren bir ArrayList alır. (Devralındığı yer: CollectionBase) |
Item[Int32] |
konumuyla tanımlanan belirli bir EmbeddedMailObjectsCollectionöğesini döndürür. |
List |
Örnekteki öğelerin CollectionBase listesini içeren bir IList alır. (Devralındığı yer: CollectionBase) |
Yöntemler
Add(EmbeddedMailObject) |
Koleksiyonun sonuna EmbeddedMailObjectsCollection bir EmbeddedMailObject ekler. |
Clear() |
Örnekteki CollectionBase tüm nesneleri kaldırır. Bu yöntem geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
Contains(EmbeddedMailObject) |
öğesinin EmbeddedMailObjectsCollection belirli EmbeddedMailObjectbir öğesini içerip içermediğini belirler. |
CopyTo(EmbeddedMailObject[], Int32) |
Koleksiyon nesnelerini dizideki belirtilen dizinden başlayarak tek boyutlu Array bir örneğe kopyalar. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetEnumerator() |
Örnekte yineleyen CollectionBase bir numaralandırıcı döndürür. (Devralındığı yer: CollectionBase) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
IndexOf(EmbeddedMailObject) |
içindeki belirli EmbeddedMailObject bir dizinini EmbeddedMailObjectsCollectionbelirler. |
Insert(Int32, EmbeddedMailObject) |
Belirtilen dizin konumunda nesneye EmbeddedMailObjectsCollection bir EmbeddedMailObject ekler. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
OnClear() |
Örneğin içeriğini CollectionBase temizlerken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnClearComplete() |
Örneğin içeriğini CollectionBase temizledikten sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnInsert(Int32, Object) |
Örneğe yeni bir öğe CollectionBase eklemeden önce ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnInsertComplete(Int32, Object) |
Örneğe yeni bir öğe CollectionBase ekledikten sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnRemove(Int32, Object) |
Bir öğeyi örnekten CollectionBase kaldırırken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnRemoveComplete(Int32, Object) |
Bir öğeyi örnekten CollectionBase kaldırdıktan sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnSet(Int32, Object, Object) |
Örnekte bir değer CollectionBase ayarlamadan önce ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnSetComplete(Int32, Object, Object) |
Örnekte bir değer CollectionBase ayarladıktan sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnValidate(Object) |
Bir değeri doğrularken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
Remove(EmbeddedMailObject) |
belirtilen EmbeddedMailObject öğesinin ilk oluşumunu içinden EmbeddedMailObjectsCollectionkaldırır. |
RemoveAt(Int32) |
Örneğin belirtilen dizinindeki CollectionBase öğesini kaldırır. Bu yöntem geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
ICollection.CopyTo(Array, Int32) |
Hedef dizinin belirtilen dizininden başlayarak tamamını CollectionBase uyumlu bir tek boyutlu Arrayöğesine kopyalar. (Devralındığı yer: CollectionBase) |
ICollection.IsSynchronized |
erişimin CollectionBase eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). (Devralındığı yer: CollectionBase) |
ICollection.SyncRoot |
erişimi CollectionBaseeşitlemek için kullanılabilecek bir nesnesi alır. (Devralındığı yer: CollectionBase) |
IList.Add(Object) |
sonuna bir nesnesi CollectionBaseekler. (Devralındığı yer: CollectionBase) |
IList.Contains(Object) |
öğesinin CollectionBase belirli bir öğeyi içerip içermediğini belirler. (Devralındığı yer: CollectionBase) |
IList.IndexOf(Object) |
Belirtilen Object öğesini arar ve tüm CollectionBaseiçindeki ilk oluşumun sıfır tabanlı dizinini döndürür. (Devralındığı yer: CollectionBase) |
IList.Insert(Int32, Object) |
Belirtilen dizinde öğesine CollectionBase bir öğe ekler. (Devralındığı yer: CollectionBase) |
IList.IsFixedSize |
değerinin sabit bir boyuta sahip olup olmadığını CollectionBase belirten bir değer alır. (Devralındığı yer: CollectionBase) |
IList.IsReadOnly |
CollectionBase öğesinin salt okunur olup olmadığını belirten bir değer alır. (Devralındığı yer: CollectionBase) |
IList.Item[Int32] |
Belirtilen dizindeki öğeyi alır veya ayarlar. (Devralındığı yer: CollectionBase) |
IList.Remove(Object) |
belirli bir nesnenin ilk oluşumunu öğesinden CollectionBasekaldırır. (Devralındığı yer: CollectionBase) |
Uzantı Metotları
Cast<TResult>(IEnumerable) |
öğesinin IEnumerable öğelerini belirtilen türe atar. |
OfType<TResult>(IEnumerable) |
Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler. |
AsParallel(IEnumerable) |
Sorgunun paralelleştirilmesini etkinleştirir. |
AsQueryable(IEnumerable) |
bir IEnumerable öğesini öğesine IQueryabledönüştürür. |