次の方法で共有


Action クラス (Microsoft.Office.Server.ApplicationRegistry.Administration)

ビジネス データ カタログ内のアクションを表します。

名前空間: Microsoft.Office.Server.ApplicationRegistry.Administration
アセンブリ: Microsoft.SharePoint.Portal (microsoft.sharepoint.portal.dll 内)

構文

'宣言
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel:=True)> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel:=True)> _
Public Class Action
    Inherits AccessControlledMetadataObject
'使用
Dim instance As Action
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel=true)] 
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel=true)] 
public class Action : AccessControlledMetadataObject

備考

エンティティはビジネス データ カタログ内でアクションを持つことができます。バックエンド データ ソースへのリンクを提供することにより、アクションは Microsoft Office SharePoint Server 2007 と代理のアプリケーション ユーザー インターフェイスとの間の隔たりを橋渡しします。ビジネス データ アクションを使用して、ライトバック シナリオを持つアプリケーションを作成することができます。ライトバック シナリオには、SAP のプロファイル情報をユーザーが直接更新できるようにする顧客プロファイル ビューなどがあります。アクションはリンクとして実装されるので、アクションを使用して電子メール メッセージの送信や顧客のホームページを開くなど簡単な操作を実行することもできます。

アクションは常にエンティティと共に移動します。つまり、エンティティにアクションを定義すると、ビジネス データ Web パーツやビジネス データ列など、そのエンティティを表示する場所に必ずそのアクションが表示されます。

アクションはパラメータを取ることができます。アクションが使用するパラメータは、ActionParameter オブジェクトが定義します。

以下のコード例では、アクションを追加し、ProductModel エンティティを更新します。

Prerequisites

Project References

このサンプルを実行する前に、コンソール アプリケーション コード プロジェクトに以下のプロジェクト参照を追加します。

  • Microsoft.SharePoint

  • Microsoft.SharePoint.Portal

  • Microsoft.Office.Server

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

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

        static void Main(string[] args)
        {
            SetupBDC();
            UpdateEntity();
            Console.WriteLine("Press any key to exit...");
            Console.Read();
        }
        static void SetupBDC()
        {
            SqlSessionProvider.Instance().SetSharedResourceProviderToUse(yourSSPName);
        }
        static void UpdateEntity()
        {
            LobSystemInstance mySysInstance = null;
            LobSystemInstanceCollection sysInsCollection = ApplicationRegistry.Instance.GetLobSystemInstancesLikeName("AdventureWorksSampleFromCode");
            foreach (LobSystemInstance sysInstance in sysInsCollection)
            {
                if (sysInstance.Name == "AdventureWorksSampleFromCode")
                {
                    mySysInstance = sysInstance;
                    break;
                }
            }
            IList<Entity> entityCollection = new List<Entity>(mySysInstance.LobSystem.Entities);
            Entity e = entityCollection[0];
            Action pmaction = e.Actions.Create("Search on MSN", true, 1, true, "https://www.msn.com?q={0}", null);
            pmaction.ActionParameters.Create("Name", true, 0);
            Console.WriteLine("Added an action and updated the entity successfully.");
        }
    }
}

継承階層

System.Object
   Microsoft.Office.Server.ApplicationRegistry.Administration.MetadataObject
     Microsoft.Office.Server.ApplicationRegistry.Administration.AccessControlledMetadataObject
      Microsoft.Office.Server.ApplicationRegistry.Administration.Action

スレッドの安全性

この型のパブリックで静的な (Visual Basic では Shared) すべてのメンバは、スレッド セーフです。インスタンス メンバは、スレッド セーフであるとは保証されません。

関連項目

参照

Action メンバ
Microsoft.Office.Server.ApplicationRegistry.Administration 名前空間