Fragmento de código: obtención de DatabaseBackedMetadataCatalog en el servidor
Última modificación: miércoles, 05 de mayo de 2010
Hace referencia a: SharePoint Server 2010
En este artículo
Descripción
Requisitos previos
Para usar este ejemplo
Descripción
El siguiente ejemplo de código muestra cómo obtener DatabaseBackedMetadataCatalog en el servidor mediante el modelo de objetos de tiempo de ejecución de Servicio de conectividad de datos profesionales (BDC) en el servidor.
Requisitos previos
Microsoft SharePoint Server 2010 o Microsoft SharePoint Foundation 2010 instalado en el servidor
Microsoft .NET Framework 3.5 y Microsoft Visual Studio
Al menos un tipo de contenido externo registrado en el Repositorio de metadatos de BDC.
Para usar este ejemplo
Inicie Visual Studio y, a continuación, cree un nuevo proyecto de aplicación de consola de C#. Seleccione .NET Framework 3.5 cuando cree el proyecto.
En el menú Ver, seleccione Páginas de propiedades para que aparezcan las propiedades del proyecto.
En la ficha Compilación, para el Destino de la plataforma, seleccione Cualquier CPU.
Cierre la ventana de propiedades del proyecto.
En el Explorador de soluciones, en Referencias, quite todas las referencias del proyecto excepto System y System.Core.
Agregue las siguientes referencias al proyecto:
Microsoft.BusinessData (de SharePoint_RootFolder\ISAPI)
Microsoft.SharePoint
Reemplace el código generado automáticamente en Program.cs por el código que aparece al final de este procedimiento.
Reemplace los valores de marcador de posición de <siteUrl>, <nameSpace>, <lobsystemInstance> y <entityName> por valores válidos.
Guarde el proyecto.
Compile el proyecto.
Ejecute la aplicación en el equipo servidor donde está instalado SharePoint Server 2010 o SharePoint Foundation 2010.
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];