ApplicationRegistry Class

NOTE: This API is now obsolete.

Provides access to all of 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 is the entry point for you to create, read, update and delete all the metadata objects including LobSystem, Entity and Method. The ApplicationRegistry object has its own ACL and a user should at least have the Edit right on it to create a new LobSystem.

Inheritance Hierarchy

System.Object
  Microsoft.Office.Server.ApplicationRegistry.Administration.MetadataObject
    Microsoft.Office.Server.ApplicationRegistry.Administration.AccessControlledMetadataObject
      Microsoft.Office.Server.ApplicationRegistry.Administration.IndividuallySecurableMetadataObject
        Microsoft.Office.Server.ApplicationRegistry.Administration.ApplicationRegistry

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

Syntax

'Declaration
<ObsoleteAttribute("O12 Application Registry API is deprecated. Please use BusinessData.")> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public Class ApplicationRegistry _
    Inherits IndividuallySecurableMetadataObject
'Usage
Dim instance As ApplicationRegistry
[ObsoleteAttribute("O12 Application Registry API is deprecated. Please use BusinessData.")]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public class ApplicationRegistry : IndividuallySecurableMetadataObject

Remarks

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

The first code snippet below shows how to set the default Shared Resource Provider in your local server farm for use with the Business Data Catalog. After you specify the Shared Resource Provider, you can use the ApplicationRegistry object to work with the Business Data Catalog.

The second code snippet shows how to create an LobSystem instance and LobSystemInstance object in the Business Data Catalog.

Examples

The following code example shows you how to create an LobSystem instance and set connection parameters.

Prerequisites

  • Ensure a Shared Service 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 Microsoft.Office.Server.ApplicationRegistry.Administration;
using Microsoft.Office.Server.ApplicationRegistry.Infrastructure;
using WSSAdmin = Microsoft.SharePoint.Administration;
using OSSAdmin = Microsoft.Office.Server.Administration;

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

        static void Main(string[] args)
        {
            SetupBDC();
            CreateLobSystemAndInstance();
            Console.WriteLine("Press any key to exit...");
            Console.Read();
        }
        static void SetupBDC()
        {
            SqlSessionProvider.Instance().SetSharedResourceProviderToUse(yourSSPName);
        }
        static void CreateLobSystemAndInstance()
        {
            LobSystem system = ApplicationRegistry.Instance.LobSystems.Create("AdventureWorksSampleFromCode", true, "Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbSystemUtility", "Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbConnectionManager", "Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbEntityInstance");

            LobSystemInstance sysInstance = system.LobSystemInstances.Create("AdventureWorksSampleFromCode", true);

            sysInstance.Properties.Add("AuthenticationMode", (Int32)Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbAuthenticationMode.PassThrough);

            sysInstance.Properties.Add("DatabaseAccessProvider", (Int32)Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbAccessProvider.SqlServer);

            sysInstance.Properties.Add("RdbConnection Data Source", "YourAdvWorks2000ServerNameHere");

            sysInstance.Properties.Add("RdbConnection Initial Catalog", "AdventureWorks2000");

            sysInstance.Properties.Add("RdbConnection Integrated Security", "SSPI");

            sysInstance.Properties.Add("RdbConnection Pooling", "false");

            sysInstance.Properties.Add("WildCardCharacter", "%");

            sysInstance.Update();
            Console.WriteLine("Created a system instance successfully.");
        }
    }
}

Thread Safety

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

See Also

Reference

ApplicationRegistry Members

Microsoft.Office.Server.ApplicationRegistry.Administration Namespace