Share via


SendMailTask 类

Sends an e-mail message. This class cannot be inherited.

继承层次结构

System. . :: . .Object
  Microsoft.SqlServer.Dts.Runtime. . :: . .DtsObject
    Microsoft.SqlServer.Dts.Runtime. . :: . .Task
      Microsoft.SqlServer.Dts.Tasks.SendMailTask..::..SendMailTask

命名空间:  Microsoft.SqlServer.Dts.Tasks.SendMailTask
程序集:  Microsoft.SqlServer.SendMailTask(在 Microsoft.SqlServer.SendMailTask.dll 中)

语法

声明
Public NotInheritable Class SendMailTask _
    Inherits Task _
    Implements IDTSComponentPersist, IDTSSendMailTask, IDTSBreakpointSite, IDTSSuspend
用法
Dim instance As SendMailTask
public sealed class SendMailTask : Task, 
    IDTSComponentPersist, IDTSSendMailTask, IDTSBreakpointSite, IDTSSuspend
public ref class SendMailTask sealed : public Task, 
    IDTSComponentPersist, IDTSSendMailTask, IDTSBreakpointSite, IDTSSuspend
[<SealedAttribute>]
type SendMailTask =  
    class
        inherit Task
        interface IDTSComponentPersist
        interface IDTSSendMailTask
        interface IDTSBreakpointSite
        interface IDTSSuspend
    end
public final class SendMailTask extends Task implements IDTSComponentPersist, IDTSSendMailTask, IDTSBreakpointSite, IDTSSuspend

SendMailTask 类型公开以下成员。

构造函数

  名称 说明
公共方法 SendMailTask Initializes a new instance of the SendMailTask class.

页首

属性

  名称 说明
公共属性 BCCLine Gets or sets the e-mail addresses of the blind carbon copy recipients, delimited by semicolons when there is more than one.
公共属性 CCLine Gets or sets the e-mail addresses of the carbon copy recipients, delimited by semicolons when there is more than one.
公共属性 DebugMode Gets or sets a Boolean indicating whether the object is in debug mode, and whether it should raise the OnBreakpointHit event while running.
公共属性 ExecutionValue Returns a user-defined object. This field is read-only. (从 Task 继承。)
公共属性 FileAttachments Gets or sets the names of the files attached to the e-mail message, delimited by the pipe character (|) when there is more than one file.
公共属性 FromLine Gets or sets the e-mail address of the sender.
公共属性 MessageSource Gets or sets the message body or the name of the source that contains the message body.
公共属性 MessageSourceType Gets or sets a value containing the source type of the message body.
公共属性 Priority Gets or sets the priority of the message.
公共属性 SmtpConnection Gets or sets the name or IP address of the Simple Mail Transfer Protocol (SMTP) server.
公共属性 Subject Gets or sets the subject of the e-mail message.
公共属性 SuspendRequired Gets or sets a Boolean that indicates if tasks should suspend when they encounter a breakpoint. This value is set by the runtime engine for tasks and containers when a breakpoint is encountered.
公共属性 ToLine Gets or sets the e-mail addresses of the recipients, delimited by semicolons if there is more than one recipient.
公共属性 Version *** Member deprecated; see Remarks. ***    Returns the version of the task. This property is read-only. (从 Task 继承。)

页首

方法

  名称 说明
公共方法 AcceptBreakpointManager Passes a BreakpointManager to the Send Mail task. This method is called by the runtime and is not used in code.
公共方法 CanUpdate *** Member deprecated; see Remarks. ***    A Boolean that indicates whether the new package XML can update the old package XML. (从 Task 继承。)
公共方法 Equals Determines whether two object instances are equal. (从 DtsObject 继承。)
公共方法 Execute Executes the Send Mail task. (覆盖 Task. . :: . .Execute(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging, Object)。)
受保护方法 Finalize (从 Object 继承。)
公共方法 GetConnectionID Gets a String containing the ID of the connection. (从 Task 继承。)
公共方法 GetConnectionName Gets a String containing the name of the connection. (从 Task 继承。)
公共方法 GetHashCode Returns the hash code for this instance. (从 DtsObject 继承。)
公共方法 GetType (从 Object 继承。)
公共方法 InitializeTask Initializes the properties associated with the task. This method is called by the runtime and is not used in code. (覆盖 Task. . :: . .InitializeTask(Connections, VariableDispenser, IDTSInfoEvents, IDTSLogging, EventInfos, LogEntryInfos, ObjectReferenceTracker)。)
公共方法 LoadFromXML This method is not callable by your application code. To load a package saved as .xml, use the Application..::..LoadPackage method.
受保护方法 MemberwiseClone (从 Object 继承。)
公共方法 ResumeExecution Resumes execution of the task after pausing. The task or container is resumed by the runtime engine.
公共方法 SaveToXML This method is not callable by your application code. To save a package as .xml, use the Application..::..SaveToXml method.
公共方法 SuspendExecution Indicates that the executable needs to suspend. This method is called by the runtime engine.
公共方法 ToString (从 Object 继承。)
公共方法 Update *** Member deprecated; see Remarks. ***    This method updates the old package XML with the new package XML if CanUpdate is set to true. (从 Task 继承。)
公共方法 Validate Verifies that the task is properly configured. (覆盖 Task. . :: . .Validate(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging)。)

页首

注释

By using the Send Mail task, a package can send notification messages when tasks in the package work flow succeed or fail. For more information, see 发送邮件任务.

示例

The following code sample creates, configures, and executes a new SendMailTask.

using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.SendMailTask;

class TestSendMailTask
{

  public static void Main()
  {

    Package pkg = new Package();

    ConnectionManager smtpCM;
    smtpCM = pkg.Connections.Add("SMTP");
    smtpCM.Name = "SMTP Connection Manager";
    smtpCM.ConnectionString = "smtphost";

    Executable exe = pkg.Executables.Add("STOCK:SendMailTask");
    TaskHost thSendMailTask = (TaskHost)exe;
    {
      thSendMailTask.Properties["SmtpConnection"].SetValue(thSendMailTask, "SMTP Connection Manager");
      thSendMailTask.Properties["ToLine"].SetValue(thSendMailTask, "someone1@example.com");
      thSendMailTask.Properties["CCLine"].SetValue(thSendMailTask, "someone2@example.com");
      thSendMailTask.Properties["BCCLine"].SetValue(thSendMailTask, "someone3@example.com");
      thSendMailTask.Properties["FromLine"].SetValue(thSendMailTask, "someone4@example.com");
      thSendMailTask.Properties["Priority"].SetValue(thSendMailTask, MailPriority.Normal);
      thSendMailTask.Properties["FileAttachments"].SetValue(thSendMailTask, "C:\\test_image.jpg");
      thSendMailTask.Properties["Subject"].SetValue(thSendMailTask, "Testing the SendMail Task");
      thSendMailTask.Properties["MessageSourceType"].SetValue(thSendMailTask, SendMailMessageSourceType.DirectInput);
      thSendMailTask.Properties["MessageSource"].SetValue(thSendMailTask, "This is only a test.");
    }

    DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);

    if (valResults == DTSExecResult.Success)
    {
      pkg.Execute();
    }

  }

}
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.SendMailTask

Module TestSendMailTask

  Sub Main()

    Dim pkg As New Package

    Dim smtpCM As ConnectionManager
    smtpCM = pkg.Connections.Add("SMTP")
    smtpCM.Name = "SMTP Connection Manager"
    smtpCM.ConnectionString = "smtphost"

    Dim exe As Executable = pkg.Executables.Add("STOCK:SendMailTask")
    Dim thSendMailTask As TaskHost = CType(exe, TaskHost)
    With thSendMailTask
      .Properties("SmtpConnection").SetValue(thSendMailTask, "SMTP Connection Manager")
      .Properties("ToLine").SetValue(thSendMailTask, "someone1@example.com")
      .Properties("CCLine").SetValue(thSendMailTask, "someone2@example.com")
      .Properties("BCCLine").SetValue(thSendMailTask, "someone3@example.com")
      .Properties("FromLine").SetValue(thSendMailTask, "someone4@example.com")
      .Properties("Priority").SetValue(thSendMailTask, MailPriority.Normal)
      .Properties("FileAttachments").SetValue(thSendMailTask, "C:\test_image.jpg")
      .Properties("Subject").SetValue(thSendMailTask, "Testing the SendMail Task")
      .Properties("MessageSourceType").SetValue(thSendMailTask, SendMailMessageSourceType.DirectInput)
      .Properties("MessageSource").SetValue(thSendMailTask, "This is only a test.")
    End With

    Dim valResults As DTSExecResult = pkg.Validate(pkg.Connections, pkg.Variables, Nothing, Nothing)

    If valResults = DTSExecResult.Success Then
      pkg.Execute()
    End If

  End Sub

End Module

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。不保证所有实例成员都是线程安全的。