다음을 통해 공유


Updater 메서드 추가

사용자가 Updater 메서드를 만들어 SharePoint 외부 목록에서 비즈니스 데이터를 업데이트하도록 설정할 수 있습니다. 자세한 내용은 비즈니스 데이터 연결 모델 디자인을 참조하세요.

Updater 메서드를 만들려면

  1. BDC 디자이너에서 엔터티를 선택합니다.

  2. 메뉴 모음에서 보기>다른 창>BDC 메서드 세부 정보를 선택합니다.

    BDC 메서드 세부 정보 창이 열립니다. 이 창에 관한 자세한 내용은 BDC 모델 디자인 도구 개요를 참조하세요.

  3. 메서드 추가 목록에서 Updater 메서드 만들기를 선택합니다.

    Visual Studio는 다음 요소를 모델에 추가합니다. 이러한 요소는 BDC 메서드 세부 정보 창에 표시됩니다.

    • Update로 이름 지정된 메서드입니다.

    • 메서드의 입력 매개 변수입니다.

    • 매개 변수의 형식 설명자입니다. 기본적으로 Visual Studio는 Finder 메서드에 대해 정의한 엔터티 형식 설명자를 사용합니다(예: Contact).

    • 메서드의 메서드 인스턴스.

      자세한 내용은 비즈니스 데이터 연결 모델 디자인을 참조하세요.

    참고 항목

    엔터티 형식의 식별자가 자동으로 생성되는 데이터베이스 테이블의 필드를 나타내는 경우 Pre-Updater 필드 속성을 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();
    
    }