Partager via


Extrait de code : Exporter un modèle BDC à partir du magasin de métadonnées BDC

Dernière modification : jeudi 13 mai 2010

S’applique à : SharePoint Server 2010

Dans cet article
Description
Conditions préalables requises
Pour utiliser cet exemple

Description

L'exemple suivant montre comment exporter un modèle BDC à partir du magasin de métadonnées.

Conditions préalables requises

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

  • Microsoft .NET Framework 3.5 sur l'ordinateur client

  • Microsoft Visual Studio.

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, cliquez sur Pages des propriétés pour afficher les propriétés du projet.

  3. Sous l'onglet Générer, pour Plateforme cible, sélectionnez Any CPU.

  4. Fermez la fenêtre de 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

    2. Microsoft.SharePoint

    3. System.Web

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

  8. Remplacez la valeur de chaîne « <siteUrl> » par une URL de site SharePoint valide.

  9. Enregistrez le projet.

  10. Compilez et exécutez le projet.

using System;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Administration;
using Microsoft.SharePoint.BusinessData.Administration;
using Microsoft.SharePoint.BusinessData.SharedService;

namespace Microsoft.SDK.Sharepoint.Samples
{
    class Program
    {
        static void Main(string[] args)
        {      
            # region export
            using (SPSite site = new SPSite(<siteUrl>))
            {
                using (new Microsoft.SharePoint.SPServiceContextScope(SPServiceContext.GetContext(site)))
                {

                    if (SPFarm.Joined == false) throw new Exception("You are not running in a server in a SharePoint Farm");
                    
                    BdcService service = SPFarm.Local.Services.GetValue<BdcService>(String.Empty);
                    AdministrationMetadataCatalog catalog = service.GetAdministrationMetadataCatalog(SPServiceContext.Current);

                    // Model names could be long and complex, getting and listing all models.
                    ModelCollection models = catalog.GetModels("*");
                    
                    Console.WriteLine("ID" + "\tModel Name");
                    foreach (Model m in models)
                    {
                        Console.WriteLine(m.Id + "\t" + m.Name);                 
                    }

                    // Let the user choose the model by ID.
                    Console.WriteLine("Type the ID of the Model to export");
                    uint modelToExport = uint.Parse(Console.ReadLine());
                    
                    foreach (Model m in models)
                    {
                        //Make sure the model is there by ID
                        if (m.Id == modelToExport)
                        {
                            Console.WriteLine("Writing model to:");
                            Console.WriteLine(m.Name + ".xml");
                            //Export the model with all contents to model name file with XML extension.
                            System.IO.File.WriteAllText(m.Name + ".xml", m.WriteXml(Microsoft.SharePoint.BusinessData.Parser.PackageContents.All), System.Text.Encoding.Unicode);                        }
                    }
                }
            }
            # endregion export

        }
    }
}

Voir aussi

Référence

BdcService

Services

AdministrationMetadataCatalog

GetAdministrationMetadataCatalog(SPServiceContext)

ModelCollection

AdministrationMetadataCatalog

Model

Name

WriteXml(PackageContents)