Table of Contents

About .NET API and SDK

Sage CRM exposes a .NET API that allows you to extend Sage CRM functionality by creating and using .NET DLLs. You can reference your DLLs from within Sage CRM and thus call methods exposed by the DLLs to perform certain actions.

The Sage CRM .NET API is an alternative to traditional ASP-based customizations in Sage CRM. The .NET API provides a type library that exposes Sage CRM objects, properties, and methods. Through the core libraries exposed by the .NET API, you can manage data access and Web Interface generation.

Steps to start using .NET API

  1. Install .NET SDK.

    See .NET API reference for information on the namespaces the .NET API exposes.

  2. Use the Visual Studio templates, code samples, and snippets supplied with the Sage CRM .NET SDK to create your custom .NET DLLs for Sage CRM.

  3. Deploy your custom .NET DLLs.

To create DLLs for Sage CRM, you can use Microsoft Visual Studio or any other tool supporting Microsoft .NET Framework 2.0.

.NET API considerations

  • References to Sage CRM .NET API from within ASP.NET are not supported. For this reason, you cannot create ASP.NET pages and call them from within Sage CRM.

  • Supported programming languages. With Sage CRM .NET API, you can use any programming language that conforms to Microsoft .NET Framework 2.0, including C#, J#, and VB.NET.

  • Supported assemblies. Any assemblies created for pre-7.2 versions of Sage CRM are not supported in Sage CRM 7.2 and later.

  • You can transfer your customizations to other Sage CRM instances. For this purpose, you can use the Component Manager. For more information, see Transferring customizations to another Sage CRM instance in the Developer Help.

  • Support for connection pooling. You can use the DotNetConnectionPool system parameter to control connection pooling. This parameter can take one of the following values:

    • N (default). Releases the connection when the object is destroyed. The number of connections changes in accordance with thread execution.


      UPDATE custom_sysparams
      SET parm_value = 'N'
      WHERE parm_name = 'DotNetConnectionPool'
    • Y. Sage CRM uses OLEDB to open database connections, and OLEDB has its own database pool implementation.


      UPDATE custom_sysparams
      SET parm_value = 'Y'
      WHERE parm_name = 'DotNetConnectionPool

    After setting a system parameter, refresh the system parameter metadata in Sage CRM:
    go to | Administration | System, and select Refresh Metadata.