Partager via


Extrait de code : obtenir le DatabaseBackedMetadataCatalog sur le serveur

Dernière modification : mercredi 5 mai 2010

S’applique à : SharePoint Server 2010

Dans cet article
Description
Conditions requises
Pour utiliser cet exemple

Description

L’exemple de code suivant montre comment obtenir DatabaseBackedMetadataCatalog sur le serveur en utilisant le modèle objet d’exécution Service BDC (Business Data Connectivity) sur le serveur.

Conditions requises

  • Microsoft SharePoint Server 2010 ou Microsoft SharePoint Foundation 2010 installé sur le serveur.

  • Microsoft .NET Framework 3.5 et Microsoft Visual Studio

  • Au moins un type de contenu externe inscrit dans le magasin de métadonnées BDC.

Pour utiliser cet exemple

  1. Démarrez Visual Studio et créez un projet d’application console C#. Sélectionnez .NET Framework 3.5 lors de la création du projet.

  2. Dans le menu Affichage, sélectionnez Pages des propriétés pour afficher les propriétés du projet.

  3. Dans l’onglet Version, pour la Plateforme cible, sélectionnez Tout processeur.

  4. Fermez la fenêtre des propriétés du projet.

  5. Dans l’Explorateur de solutions, sous Références, supprimez toutes les références du projet à l’exception de System et System.Core.

  6. Ajoutez les références suivantes au projet :

    1. Microsoft.BusinessData (à partir de SharePoint_RootFolder\ISAPI)

    2. Microsoft.SharePoint

  7. Remplacez le code généré automatiquement dans Program.cs par le code fourni à la fin de cette procédure.

  8. Remplacez les valeurs des espaces réservés <siteUrl>, <nameSpace>, <lobsystemInstance> et <entityName> par des valeurs valides.

  9. Enregistrez le projet.

  10. Compilez le projet.

  11. Exécutez l’application sur l’ordinateur serveur sur lequel SharePoint Server 2010 ou SharePoint Foundation 2010 est installé.

using Microsoft.BusinessData.MetadataModel;
using Microsoft.BusinessData.Runtime;
using Microsoft.SharePoint.BusinessData.MetadataModel;
using Microsoft.SharePoint;
using Microsoft.SharePoint.BusinessData.SharedService;


//Code.

// Get context from specific site.
SPServiceContext context = SPServiceContext.GetContext(new SPSite("<siteUrl>")); 
IMetadataCatalog databaseCatalog = null;
BdcService bdcService = SPFarm.Local.Services.GetValue<BdcService>(String.Empty);
if (null != bdcService)
{
    databaseCatalog = bdcService.GetDatabaseBackedMetadataCatalog(context);
}
string @namespace = "<nameSpace>";
string entityName = "<entityName>";
string lsiName = "<lobsystemInstance>";

IEntity entity = databaseCatalog.GetEntity(@namespace, entityName);
ILobSystem lobSystem = entity.GetLobSystem();
ILobSystemInstance lsi = lobSystem.GetLobSystemInstances()[lsiName];

Voir aussi

Référence

IMetadataCatalog

BdcService

GetDatabaseBackedMetadataCatalog(SPServiceContext)

GetEntity(String, String)

IEntity

GetLobSystem()

ILobSystem

GetLobSystemInstances()

ILobSystemInstance