Implementing a Custom Image Data Provider that supports annotation requires an understanding of Transactional Programming (see Background Information on Transactions).
Most modern database engines are transactional and obey the semantics of the System.Transactions.TransactionScope object. Creating a custom data provider for a transactional system is fairly straightforward (see Using a Transactional Resource).
Creation of a custom image data provider for a non-transactional system (such as the file system) is also supported by ImageGear, but requires some additional steps to handle and manage the transactional resources (see Using a Non-Transactional Resource).
To assist the programmer in creating custom image data providers that support annotations, two abstract helper classes are provided within the ImageGear.Web.Services assembly (see Helper Abstract Classes in ImageGear.Web.Services Assembly).
This section provides information about the following: