如何:在实体上执行 SpecificFinder 方法

SpecificFinder 是一种特殊的方法;如赋予其一个键(唯一 ID),便可返回一个实体实例。例如,对于 Customer 实体,SpecificFinder 方法可能如下所示:

SELECT * FROM Customers where ID=1

本主题说明如何在业务数据目录中注册的实体上执行 SpecificFinder 方法。

示例

本示例演示如何在 AdventureWorks2000 示例中的 Product 实体上执行 SpecificFinder 方法。

先决条件

  • 确保已创建了一个共享服务提供程序。

  • 用共享资源提供程序的名称替换代码中的常数值 EnterYourSSPNameHere。

  • 确保业务数据目录中存在示例中引用的 LobSystem 和实体名称。使用有效的名称。

项目引用

运行此示例之前,在控制台应用程序代码项目中添加下面的项目引用:

  • Microsoft.SharePoint

  • Microsoft.SharePoint.Portal

  • Microsoft.Office.Server

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Microsoft.Office.Server.ApplicationRegistry.MetadataModel;
using Microsoft.Office.Server.ApplicationRegistry.Runtime;
using Microsoft.Office.Server.ApplicationRegistry.SystemSpecific;
using Microsoft.Office.Server.ApplicationRegistry.Infrastructure;
using WSSAdmin = Microsoft.SharePoint.Administration;
using OSSAdmin = Microsoft.Office.Server.Administration;

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

        static void Main(string[] args)
        {
            SetupBDC();
            FindSpecific();
            Console.WriteLine("Press any key to exit...");
            Console.Read();
        }
        static void SetupBDC()
        {
            SqlSessionProvider.Instance().SetSharedResourceProviderToUse(yourSSPName);
        }
        static void FindSpecific()
        {
            NamedLobSystemInstanceDictionary sysInstances = ApplicationRegistry.GetLobSystemInstances();
            LobSystemInstance AdvWorksIns = sysInstances["AdventureWorksSampleInstance"];
            Entity prodEntity = AdvWorksIns.GetEntities()["Product"];
            //ProductID = 1
            IEntityInstance IE = prodEntity.FindSpecific(1, AdvWorksIns);
            foreach (Field f in prodEntity.GetSpecificFinderView().Fields)
                Console.Write(IE[f]);
            Console.WriteLine("");
        }
    }
} 

See Also

概念

业务数据目录:元数据模型

其他资源

浏览元数据存储库和执行方法及筛选器

使用业务数据目录构建自定义应用程序