How to: Participate in Transactions in Web Services Created Using ASP.NET

This topic is specific to a legacy technology. XML Web services and XML Web service clients should now be created using Windows Communication Foundation.

Code Example

For an XML Web service created using ASP.NET, you can declare the Web service's transactional behavior by setting the TransactionOption property of the WebMethod attribute applied to the Web service method. For an explanation of how transactions work for Web service methods, see Transactions in ASP.NET XML Web Services.

To participate in a transaction from a Web service method

  1. Declare a Web service.

    <%@ WebService Language="C#" Class="Orders" %>
    
    <%@ WebService Language="VB" Class="Orders" %>
    
  2. Add an Assembly directive to System.EnterpriseServices.

    <%@ Assembly name="System.EnterpriseServices,Version=1.0.3300.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" %>
    
  3. Add references to the System.Web.Services and System.EnterpriseServices namespaces.

    using System.Web.Services;
    using System.EnterpriseServices;
    
    Imports System.Web.Services
    Imports System.EnterpriseServices
    
  4. Declare a Web service method, setting the TransactionOption property of the WebMethodAttribute attribute to System.EnterpriseServices.TransactionOption.RequiresNew .

    [ WebMethod(TransactionOption=TransactionOption.RequiresNew)]
    public int DeleteAuthor(string lastName)  
    
    < WebMethod(TransactionOption:=TransactionOption.RequiresNew)> _
    Public Function DeleteAuthor(lastName As String) As Integer
    

See Also

Reference

TransactionOption Enumeration
WebMethodAttribute.TransactionOption Property

Concepts

Transactions in ASP.NET XML Web Services

Other Resources

Transaction Processing
XML Web Services Using ASP.NET