次の方法で共有


方法: Updater メソッドを追加する

Updater メソッドを作成することで、SharePoint 外部リストのビジネス データを更新できるようになります。 詳細については、「Business Data Connectivity モデルのデザイン」を参照してください。

Updater メソッドを作成するには

  1. BDC デザイナーで、エンティティを選択します。

  2. [表示] メニューの [その他のウィンドウ] をクリックし、[BDC メソッドの詳細] をクリックします。

    [BDC メソッドの詳細] ウィンドウが表示されます。 このウィンドウの詳細については、「BDC モデルのデザイン ツールの概要」を参照してください。

  3. [BDC メソッドの詳細] ウィンドウの [メソッドの追加] ドロップダウン リストの [Updater メソッドの作成] をクリックします。

    次の要素がモデルに追加されます。 これらの要素は [BDC メソッドの詳細] ウィンドウに表示されます。

    • Update というメソッド。

    • メソッドの入力パラメーター。

    • パラメーターの型記述子。 Visual Studio では、既定により、Finder メソッドに対して定義したエンティティ型記述子 (例: Contact) が使用されます。

    • メソッドのメソッド インスタンス。

    詳細については、「Business Data Connectivity モデルのデザイン」を参照してください。

    注意

    エンティティ型の識別子が、自動的に生成されないデータベース テーブルのフィールドを表している場合は、[Pre-Updater フィールド] プロパティを [True] に設定します。

  4. ソリューション エクスプローラーで、そのエンティティ用に生成されたサービス コード ファイルを右クリックし、[コードの表示] をクリックします。

    コード エディターで、エンティティ サービス コード ファイルが開きます。 エンティティ サービス コード ファイルの詳細については、「ビジネス データ接続モデルの作成」を参照してください。

  5. Updator メソッドにコードを追加してデータを更新します。 次の例では、SQL Server の AdventureWorks サンプル データベースの連絡先に関する情報を更新します。

    注意

    ServerName フィールドの値を、使用するサーバーの名前に置き換えます。

    Public Shared Sub Update(ByVal contact As Contact)
        Const ServerName As String = "MySQLServerName"
        Dim dataContext As AdventureWorksDataContext = _
            New AdventureWorksDataContext("Data Source=" & ServerName & _
                ";Initial Catalog=AdventureWorks;Integrated Security=True")
    
        Dim ContactToUpdate As Contact = (From Contacts In dataContext.Contacts.AsEnumerable().Take(20) _
             Where Contacts.ContactID = contact.ContactID _
             Select Contacts).Single()
    
        With ContactToUpdate
            .FirstName = contact.FirstName
            .LastName = contact.LastName
            .EmailAddress = contact.EmailAddress
            .Phone = contact.Phone
            .EmailPromotion = contact.EmailPromotion
            .NameStyle = contact.NameStyle
            .PasswordHash = contact.PasswordHash
            .PasswordSalt = contact.PasswordSalt
        End With
    
        dataContext.SubmitChanges()
    
    End Sub
    
    public static void Update(Contact contact)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        var contactToUpdate = (from contacts in dataContext.Contacts
                                where contacts.ContactID == contact.ContactID
                                select contacts).Single();
    
        contactToUpdate.FirstName = contact.FirstName;
        contactToUpdate.LastName = contact.LastName;
        contactToUpdate.EmailAddress = contact.EmailAddress;
        contactToUpdate.Phone = contact.Phone;
        contactToUpdate.EmailPromotion = contact.EmailPromotion;
        contactToUpdate.NameStyle = contact.NameStyle;
        contactToUpdate.PasswordHash = contact.PasswordHash;
        contactToUpdate.PasswordSalt = contact.PasswordSalt;
        contactToUpdate.ModifiedDate = DateTime.Now;
        contactToUpdate.rowguid = Guid.NewGuid();
        dataContext.SubmitChanges();
    
    }
    

参照

処理手順

方法: Finder メソッドを追加する

方法: SpecificFinder メソッドを追加する

方法: Creator メソッドを追加する

方法: Updater メソッドを追加する

方法: Deleter メソッドを追加する

方法 : メソッドにパラメーターを追加する

方法: メソッド インスタンスを定義する

その他の技術情報

Business Data Connectivity モデルのデザイン

BDC モデルのデザイン ツールの概要