Author: Halfvares Mats, Teknikhuset AB.

Published: 2006-02-22

Applies to:
  • Content Studio ver. 4.5 build 1012 and later

Type: How to

More information

In Content Studio version 4.5 build 1012 a new type of Event Action will be available. This make i possible for a developer to write event handlers that Content Studio can execute on certain events on a certain category.
These runs synchronously and has the ability to roll-back the action in Content Studio that triggered them and can be used to ex. synchronize data between Content Studio and an external system. Also it is possible to implement business rules that normally cannot easily be implemented in Content Studio directly. These event handlers must be written in a programming language that can handle COM (ex. Visual Basic 6, .NET, Delphi and Visual C++) They must implement the COM-interface ICSEventHandler and must have knowledge of the COM interface ICSCredentialsContainer. Both these interfaces are defined in the CSExtender type library that is installed with Content Studio. An implementer should import or declare these interfaces and create a number of COM-enabled classes that implements ICSEventHandler. The assembly should have a strong name and must be copied and registered on the target server. To register the assemblies you use the RegAsm tool that comes with the .NET framework. If you do not install your assembly in the global assembly cache RegAsm must be used with the /codebase switch.
The white-paper How to create a Content Studio Event handler object in Visual Studio.doc describes the process of writing such an event handler in C#. For C# developers a project template for Visual Studio 2005 is available that radically facilitates the development of these event handlers. Copy the downloaded .ZIP-file into your personal template directory and it will turn up as an option when you create an new Visual Studio project. Your personal template directory typically is installed in the folder "My Documents\Visual Studio 2005\Templates\ProjectTemplates\Visual C#".
C# developers can download the template here