Extensions allow extended standard and custom functionality to be configured on a object within the application, generally on mappers. Extension objects implement this interface and respond to interesting events by manipulating the object firing the event or otherwise acting based on the object. IMapper extensions should be derived from the MapperExtensionKernel base class.

Namespace: NetQuarry
Assembly: EAP.Core (in EAP.Core.dll) Version: (


public interface IExtension
Visual Basic
Public Interface IExtension


Extensions are a key concept of the NetQuarry platform. Extensions are libraries (assemblies) that receive events from the running application objects. For example, when a record in a page is changed, the Mapper representing that data fires update events (notifications) through all of the extensions configured (via metadata) on that object.

This is a powerful programming pattern that is extremely simple for application developers, even those unfamiliar with Microsoft .NET to quickly grasp and master.

To create an extension, the developer runs a wizard from the Studio that allows them to specify the name, location, language (C#, VB.NET), and which objects they want to attach the extension. Some objects support the idea of “global” extensions (e.g. Mappers). A global extension is automatically attached to all objects of a particular class. This is particularly useful for functionality such as auditing and summary information handling. Extensions must implement a known interface (IExtension) or derive from a provided base class.

See Also