Developing an Email Activity Control in WF

naimish's Avatar author of Developing an Email Activity Control in WF
This is an article on Developing an Email Activity Control in WF in ASP.
Rated 5.00 By 1 users

Introduction



This article describes how to develop an Email Activity Control in WF and it constructs an activity and shows how to use that activity within a workflow.

Background



Windows Workflow Foundation (WF) provides a visual interface for creating and hosting workflows that integrate seamlessly into line-of-business applications built on the .NET 3.0 Framework. Activity binding, one feature of Windows Workflow Foundation, allows an activity author to expose the properties of his or her activity to other activities at a workflow level. Once the properties are available at the workflow level, they can interact with the components that serve as the solution user interface. This allows developers to set activity properties dynamically in a way with which they are familiar in a Visual Studio environment.

The code



Code:
Configuring Dependency Properties
public static DependencyProperty From Property = DependencyProperty.Register("From", typeof(string),typeofSendMailActivity));
System.Workflow.ComponentModel.Compiler.ValidationOptionAttributeSystem.
Workflow.ComponentModel.Compiler. ValidationOption.Required)] 
public string From
{
	get
	{
		return ((string)(this.GetValue(SendMailActivity.FromProperty)));
	}
	set
	{
		this.SetValue(SendMailActivity.FromProperty, value);
	}
}
Defining an Activity Function
protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
{
	MailAddress toAddress = new MailAddress(To);
	MailAddress fromAddress = new MailAddress(From);
	MailAddressCollection addresses = new MailAddressCollection();
	addresses.Add(toAddress);
	MailMessage msg = new MailMessage(fromAddress, toAddress);
	string body = System.String.Empty;
	msg.Body = body;//You can Customize Email Body whatever you required
	//First Parameter SMTP Server URL and Second One Default Port
	SmtpClient mail = new SmtpClient(MailServerUrl, 25);
	mail.Send(msg);
}
0
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Nominate this article for Article of the month - Jul 2009
0
naimish's Avatar
Banned
Did anyone understand this article ? Or should I gave more ?