添加 Updater 方法

了解如何通过创建 Updater 方法使用户能够更新 SharePoint 外部列表中的业务数据。 有关详细信息,请参阅设计业务数据连接模型

创建 Updater 方法的步骤

  1. 在 BDC 设计器上,选择一个实体。

  2. 在菜单栏上,选择“视图”>“其他窗口”>“BDC 方法详细信息” 。

    “BDC 方法详细信息”窗口将打开。 有关此窗口的详细信息,请参阅 BDC 模型设计工具概述

  3. 在“添加方法”列表中,选择“创建 Updater 方法” 。

    Visual Studio 将以下元素添加到模型中。 这些元素显示在“BDC 方法详细信息”窗口中。

    • 名为 Update 的方法。

    • 方法的输入参数。

    • 参数的类型描述符。 默认情况下,Visual Studio 使用为 Finder 方法定义的实体类型描述符,例如 Contact。

    • 方法的方法实例。

      有关详细信息,请参阅设计业务数据连接模型

    注意

    如果实体类型的标识符表示数据库表中未自动生成的字段,请将 Pre-Updater Field 属性设置为 True 。

  4. 在解决方案资源管理器中,打开为实体生成的服务代码文件的快捷菜单,然后选择“查看代码” 。

    实体服务代码文件将在“代码编辑器”中打开。 有关该文件的详细信息,请参阅创建业务数据连接模型

  5. 将代码添加到 Update 方法以更新数据。 以下示例更新 SQL Server AdventureWorks 示例数据库中的联系人信息。

    注意

    ServerName 字段的值替换为你的服务器名称。

    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();
    
    }