VS.NET 2010/2012 Users Click Here   

HOMECONTACT PRODUCTS DOWNLOADS PURCHASE TESTIMONIALS FORUMS COMPANY CONTACT
Home
Products
Downloads
Purchase
Licensing
Licensing FAQ
Software Updates
Support Forums
Testimonials
Feature Requests
Guarantee
About Us
Contact Us
Hosting Companies
Privacy Policy
   
Shopping Cart


Search

aspNetEmail: Adding Email Functionality to SQL Server with aspNetEmail

by Dave 6. March 2011 00:17

The following steps can be taken to use aspNetEmail from inside of SQL Server.

1)Make sure database Trustworth is set to on. This is found in the database properties. To set it call:

ALTER DATABASE "database name" SET TRUSTWORTHY ON;.

Here is a real example:

ALTER DATABASE AdventureWorks SET TRUSTWORTHY ON;.

2) Because aspNetEmail depends upon System.Web, you will need to set a reference to it in SQL Server.
This can be done by executing:

CREATE ASSEMBLY SystemWeb from 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.dll'
with permission_set = unsafe
GO

Be sure the path to the System.Web.dll matches the path on your server machine.

3)To  import aspNetEmail into SQL server, expand the Programmability --> Assemblies folder (under your Database name).
Right-click the Assemblies folder, and select "New Assembly"
For perssion set, select "unrestricted"
For path, browse to the aspNetEmail filesystem location. By default, it is located under c:\program files\advancedintellect\aspNetEmail\
Set the permission set to Unrestricted

4)Verify your SQL Server is CLR enabled by running the following T-SQL statement:

sp_configure 'clr enabled',1

followed by either a server stop/re-start, or executing:

reconfigure

5)Open Visual Studio, and create a SQL database project

6)In the Visual Studio Solution Explorer pane,  right-click References, and select "Add Reference".

7)The Add References dialog box appears.

8)Under the SQL Server tab, select aspNetEmail.

9)Choose Project->Add User Defined Function, and name the .cs file anything you like, such as "EmailHelper.cs".

Add the SendEmail() method so your code looks something like:

public partial class UserDefinedFunctions
{
    [Microsoft.SqlServer.Server.SqlFunction]
    public static SqlString SendEmail()
    {
        SqlString result = new SqlString("success");

        EmailMessage.LoadLicenseFile("c:\\aspNetEmail.xml.lic");
   
        EmailMessage msg = new EmailMessage("127.0.0.1");
        msg.From = "me@example.com";
        msg.To = "you@example.com";
        msg.Subject = "My test email from sql server set at: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm");
        msg.Body = "put the contents of your email body here...";
        msg.Send();

        return result;
    }

};

Once that is complete, you can now use your new function like any other User Defined T-SQL function.  For example,

select dbo.SendEmail()

This method can easily be modified to accept various parameters (such as recipients) to send emails to different people.


 



 

 

Testimonial

[in response to a support question]Wow! That was quick. Thanks for the info. "

D. Landino | Automated Concepts

Read more testimonials
ListNanny aspNetDNS aspNetEmail aspNetPOP3 aspNetMX IPMuncher aspNetMIME aspNetPING aspNetTraceRoute aspNetIMAP aspNetMHT