Creating a Metaverse Rules Extension in Visual Basic .NET

You can use the Visual Studio 2005 programming language to create a metaverse rules extension. There are two ways to create the project files for rules extensions:

  • Use Identity Manager to create a Visual Studio 2005 project.
  • Use Visual Studio 2005 to create the project

Using Identity Manager is the easiest way to create the project. The Identity Manager creates the necessary files and automatically makes the reference to the Microsoft.MetadirectoryServices assembly. However, using the Identity Manager to create your project files limits you to creating your rules extension on the same system where Microsoft Identity Integration Server (MIIS) is installed. For more information about using Identity Manager to create the project files, see "Create a rules extension for the metaverse" in Microsoft Identity Lifecycle Manager 2007, Feature Pack 1 Help.

If you want to create your rules extension on a different system, you can use Visual Studio 2005 to create the project files. You will need to copy the Microsoft.MetadirectoryServices assembly to your development system and manually create a reference to the assembly. You can find the assembly in the bin\assemblies folder of the MIIS program folder. The default folder for ILM 2007 FP1 is C:\Program Files\Microsoft Identity Integration Server\bin\assemblies\.

To create the rules extension using Visual Studio 2005, you must complete the following steps in the order in which they appear. An overview of the procedure is presented first, followed by a detailed explanation of each step.

  1. Create a new Visual Basic class library project
  2. Add a reference to the Microsoft.MetadirectoryServices assembly
  3. Copy the code to the code pane and make changes to the code
  4. Build the class library
  5. Install the rules extension in the rules extensions folder (Optional)

ms695377.wedge(en-us,VS.85).gifTo create a new Visual Basic .NET class library project

  1. Click Start, point to All Programs, and then click Microsoft Visual Studio 2005.

    The Visual Studio 2005 development environment appears.

  2. On the File menu, point to New, and then click Project.

  3. In the New Project dialog box, in Project Types, click Visual Basic.

  4. On the Template menu, click Class Library.

  5. In the Name box, type the name of your rules extension, and then click Browse.

  6. Browse to the location where you want to store the project files, click Open, and then click OK.

    Your project name now appears in Solution Explorer.

Note  We recommend that you store the project on your local computer rather than on a network location.

ms695377.wedge(en-us,VS.85).gifTo add a reference to the Microsoft.MetadirectoryServices assembly

  1. On the Project menu in Visual Studio 2005, click Add Reference.

  2. In the .NET tab of the Add Reference dialog box, click Microsoft.MetadirectoryServices, and then click OK. If the file does not appear in the Component Name list, click the Browse tab. Browse to the folder with the assembly file, click Microsoft.MetadirectoryServices.dll, and then click Open.

  3. Click OK to close the Add Reference dialog box.

    In Solution Explorer, Microsoft.MetadirectoryServices now appears as one of the references.

ms695377.wedge(en-us,VS.85).gifTo copy the code to the code pane and make changes to the code

  1. Delete the existing code in the code pane, and then copy the following code example to the code pane.

    Imports Microsoft.MetadirectoryServices
    
    ' Replace <sample extension object name> with the name of your rules extension
    ' class. If you do not replace <sample extension object name> with the name of 
    ' your rules extension class, you will not be able to compile this file.
    
    Public Class <sample extension object name>
        Implements IMVSynchronization
    
        Public Sub Initialize() Implements IMvSynchronization.Initialize
            ' TODO: Add initialization code here
        End Sub
    
        Public Sub Terminate() Implements IMvSynchronization.Terminate
            ' TODO: Add termination code here
        End Sub
    
        Public Sub Provision(ByVal mventry As MVEntry) _
                            Implements IMVSynchronization.Provision
            ' TODO: Remove this throw statement if you implement this method
            Throw New EntryPointNotImplementedException()
        End Sub
    
        Public Function ShouldDeleteFromMV(ByVal csentry As CSEntry, _
                                           ByVal mventry As MVEntry) _
                                           As Boolean Implements IMVSynchronization.ShouldDeleteFromMV
            ' TODO: Add MV deletion code here
            Throw New EntryPointNotImplementedException()
        End Function
    End Class
    
  2. In the code, replace all instances of <sample extension object name> with the name of your rules extension class. Be sure to remove the angle brackets (< >).

ms695377.wedge(en-us,VS.85).gifTo build the class library

  • On the Build menu, click Build Solution.

    If you see the following message, the rules extension was successfully built:

    ------ Build started: Project: Management Agent Rules Extension, Configuration: Debug .NET ------
    
    Preparing resources...
    Updating references...
    Performing main compilation...
    Building satellite assemblies...
    
    
    
    ---------------------- Done ----------------------
    
        Build: 1 succeeded, 0 failed, 0 skipped
    

    The rules extension file, which has a .dll extension, is in the bin\Debug folder of your project folder.

    Before using the rules extension, install it in the MIIS rules extensions folder. The default folder for rules extensions is C:\Program Files\Microsoft Identity Integration Server\Extensions.

This procedure is optional. You can set Visual Studio 2005 to install the rules extension automatically in the extensions folder as part of the build process.

ms695377.wedge(en-us,VS.85).gifTo install the rules extension in the rules extensions folder

  1. In Solution Explorer, click your class library project.

  2. On the View menu, click Property Pages.

    There are two folders in the Property Pages dialog box: Common Properties and Configuration Properties.

  3. Open the Configuration Properties folder. In the Configuration drop-down list box, click All Configurations.

  4. In the left pane of the Property Pages dialog box, click Build.

  5. In Output Path, type the name of the rules extensions folder or browse to the location of the rules extensions folder.

    The default folder for rules extensions is C:\Program Files\Microsoft Identity Integration Server\Extensions.

Send comments about this topic to Microsoft

Build date: 2/16/2009