ApplicationRegistry Class

NOTE: This API is now obsolete.

Provides access to all the line-of-business (LOB) systems and LOB system instances registered in the Business Data Catalog. This is the top-level object in the Business Data Catalog's object model. It enables you to read all the metadata objects including LOB system, entities, and methods.


Namespace:  Microsoft.Office.Server.ApplicationRegistry.MetadataModel
Assembly:  Microsoft.SharePoint.Portal (in Microsoft.SharePoint.Portal.dll)

[ObsoleteAttribute("O12 Application Registry API is deprecated. Please use BusinessData.")]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public sealed class ApplicationRegistry

The Business Data Catalog is implemented as an Office SharePoint Server 2007 core service and is shared across a Shared Resource Provider. Therefore, before you can use the ApplicationRegistry object, you must specify the Shared Resource Provider associated with the Business Data Catalog.

The following code example shows how to display the names of the systems that are registered in the Business Data Catalog. Specifying the Shared Services Provider (SSP) is one of the first step sin a console application to work with the Business Data Catalog.

After you specify the Shared Services Provider, you can use the ApplicationRegistry object to get the LobSystemInstance objects that are registered with the Business Data Catalog, as shown in the following example.


  • Ensure a Shared Services Provider is already created.

  • Replace the constant value EnterYourSSPNameHere in the code with the name of your Shared Resource Provider.

Project References

Add the following Project References in your console application code project before running this sample:

  • Microsoft.SharePoint

  • Microsoft.SharePoint.Portal

  • Microsoft.Office.Server

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Microsoft.Office.Server.ApplicationRegistry.MetadataModel;
using Microsoft.Office.Server.ApplicationRegistry.Runtime;
using Microsoft.Office.Server.ApplicationRegistry.SystemSpecific;
using Microsoft.Office.Server.ApplicationRegistry.Infrastructure;
using WSSAdmin = Microsoft.SharePoint.Administration;
using OSSAdmin = Microsoft.Office.Server.Administration;

namespace Microsoft.SDK.SharePointServer.Samples
    class GetStartedAndDisplaySystems
        const string yourSSPName = "EnterYourSSPNameHere";

        static void Main(string[] args)
            Console.WriteLine("Press any key to exit...");
        static void SetupBDC()
        static void DisplayLOBSystemsinBDC()
            NamedLobSystemInstanceDictionary sysInstances = ApplicationRegistry.GetLobSystemInstances();
            Console.WriteLine("Listing system instances...");
            foreach (String name in sysInstances.Keys)

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.