Compartilhar via


Adicionar um método Updater

Você pode permitir que os usuários atualizem dados corporativos em uma lista externa do SharePoint criando um método Atualizador. Para obter mais informações, confira Criar um modelo de conectividade de dados corporativos.

Para criar um método Atualizador

  1. No designer BDC, escolha uma entidade.

  2. Na barra de menus, escolha Exibir>Outro Windows>Detalhes do Método BDC.

    A janela Detalhes do Método BDC é aberta. Para obter mais informações sobre essa janela, confira Visão geral das ferramentas de design de modelo do BDC.

  3. Na lista Adicionar um Método, escolha Criar Método Atualizador.

    O Visual Studio adiciona os elementos a seguir ao modelo. Esses elementos aparecem na janela Detalhes do Método BDC.

    • Um método chamado Atualizador.

    • Um parâmetro de entrada para o método.

    • O descritor de tipo para o parâmetro. Por padrão, o Visual Studio usa o descritor de tipo de entidade que você definiu para o método Localizador (por exemplo: Contato).

    • Uma instância de método para o método.

      Para obter mais informações, confira Criar um modelo de conectividade de dados corporativos.

    Observação

    Se o identificador do tipo de entidade representar um campo em uma tabela de banco de dados que não é gerada automaticamente, defina a propriedade Campo Pré-atualizador como Verdadeiro.

  4. Em Gerenciador de Soluções, abra o menu de atalho do arquivo de código de serviço que foi gerado para a entidade e escolha Exibir Código.

    O arquivo de código do servidor é aberto no Editor de Códigos. Para obter mais informações sobre esse arquivo, confira Criar um modelo de conectividade de dados corporativos.

  5. Adicione o código ao método Atualizador para atualizar os dados. O exemplo a seguir atualiza as informações de um contato no banco de dados de exemplo AdventureWorks para SQL Server.

    Observação

    Substitua o valor do campo ServerName pelo nome do servidor.

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