Compartir a través de


Fragmento de código: exportación de un modelo BDC desde el Repositorio de metadatos de BDC

Última modificación: jueves, 13 de mayo de 2010

Hace referencia a: SharePoint Server 2010

En este artículo
Descripción
Requisitos previos
Para usar este ejemplo

Descripción

En el siguiente ejemplo se muestra cómo exportar un modelo BDC desde el Repositorio de metadatos.

Requisitos previos

  • Microsoft SharePoint Server 2010 o Microsoft SharePoint Foundation 2010 en el servidor.

  • Microsoft .NET Framework 3.5 en el equipo cliente.

  • Microsoft Visual Studio.

Para usar este ejemplo

  1. Inicie Visual Studio y cree un proyecto de aplicación de consola C#. Seleccione .NET Framework 3.5 al crear el proyecto.

  2. En el menú Ver, haga clic en Páginas de propiedades para que aparezcan las propiedades del proyecto.

  3. En la ficha Compilación, para el Destino de la plataforma, seleccione Cualquier CPU.

  4. Cierre la ventana de propiedades del proyecto.

  5. En el Explorador de soluciones, en Referencias, quite todas las referencias del proyecto excepto System y System.Core.

  6. Agregue las siguientes referencias al proyecto:

    1. Microsoft.BusinessData

    2. Microsoft.SharePoint

    3. System.Web

  7. Reemplace el código generado automáticamente en Program.cs por el código que aparece al final de este procedimiento.

  8. Reemplace el valor de cadena "<siteUrl>" por una dirección URL de sitio de SharePoint válida.

  9. Guarde el proyecto.

  10. Compile y ejecute el proyecto.

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

        }
    }
}

Vea también

Referencia

BdcService

Services

AdministrationMetadataCatalog

GetAdministrationMetadataCatalog(SPServiceContext)

ModelCollection

AdministrationMetadataCatalog

Model

Name

WriteXml(PackageContents)