Métodos de DataContext (Designer de Objeto Relacional)
Os métodos deDataContext (no contexto do Designer Relacional de Objetos) são os métodos da classe DataContext que executam procedimentos armazenados e funções em um banco de dados.
A classe DataContext é uma classe LINQ to SQL que atua como um conduto entre um banco de dados SQL Server e as classes de entidade LINQ to SQL mapeadas para o banco de dados. A classe DataContext contém as informações da cadeia de conexão e os métodos para conexão a um banco de dados e para manipulação dos dados do banco de dados. Por padrão, a classe DataContext contém vários métodos que você pode chamar, como o método SubmitChanges, que envia dados atualizados das classes do LINQ to SQL ao banco de dados. Você também pode criar métodos DataContext adicionais que mapeiem para procedimentos armazenados e funções. Ou seja, a chamada desses métodos personalizados executará o procedimento armazenado ou a função no banco de dados para o qual o método DataContext está mapeado. Você pode adicionar novos métodos à classe DataContext exatamente como adiciona métodos para estender qualquer classe. No entanto, em discussões sobre os métodos de DataContext no contexto do Designer Relacional de Objetos, são os métodos de DataContext que mapeiam para procedimentos armazenados e funções que estão sendo discutidos.
Dica
No LINQ to SQL, os procedimentos armazenados e as funções são tratados da mesma maneira, ambos os procedimentos armazenados e as funções são mapeados para classes de entidade usando o mesmo StoredProcedureAttribute.No contexto do LINQ to SQL, os métodos de DataContext que mapeiam para procedimentos armazenados são os mesmos que mapeiam para funções.
Painel de Métodos
Os métodos deDataContext que mapeiam para procedimentos armazenados e funções são exibidos no painel dos métodos do Designer Relacional de Objetos. O painel de métodos é o painel na lateral direita do painel Entidades (a superfície de design principal). O painel de métodos lista todos os métodos de DataContext que você criou usando o Designer Relacional de Objetos. Por padrão, o painel de métodos está vazio. Arraste procedimentos armazenadas ou funções do Gerenciador de Servidores/Gerenciador de Banco de Dados para o Designer Relacional de Objetos para criar métodos de DataContext e popular o painel de métodos. Para obter mais informações, consulte Como criar métodos DataContext mapeados para procedimentos armazenados e funções (Designer Relacional de Objetos).
Dica
Abra e feche o painel de métodos clicando com o botão direito do mouse no Designer Relacional de Objetos e clicando em Ocultar Painel de Métodos ou Mostrar Painel de Métodos ou use o atalho do teclado CTRL+1.
Dois tipos de métodos de DataContext
Os métodos de DataContext são os métodos que mapeiam para procedimentos armazenados e funções no banco de dados. Você pode criar e adicionar métodos de DataContext no painel de métodos do Designer Relacional de Objetos. Há dois tipos distintos de métodos de DataContext; os que retornam um ou vários conjuntos de resultados, e os que não retornam:
Os métodos de DataContext que retornam um ou mais conjuntos de resultados:
Crie esse tipo de método DataContext quando seu aplicativo precisar apenas executar procedimentos armazenados e funções no banco de dados e retornar os resultados. Para obter mais informações, consulte Como criar métodos DataContext mapeados para procedimentos armazenados e funções (Designer Relacional de Objetos), [T:System.Data.Linq.ISingleResult'1] e IMultipleResults.
Os métodos de DataContext que não retornam conjuntos de resultados: como inserções, atualizações e exclusões para uma classe de entidade específica.
Crie esse tipo de método de DataContext quando seu aplicativo precisar executar procedimentos armazenados em vez de usar o comportamento padrão do LINQ to SQL para salvar dados modificados entre uma classe de entidade e o banco de dados. Para obter mais informações, consulte Como atribuir procedimentos armazenados para executar atualizações, inserções e exclusões (Designer Relacional de Objetos).
Tipos de retorno de métodos de DataContext
Quando você arrasta procedimentos armazenados e funções do Gerenciador de Servidores/Gerenciador de Banco de Dados para o Designer Relacional de Objetos, o tipo de retorno do método DataContext gerado difere dependendo de onde você solta o item. Soltar os itens diretamente em uma classe de entidade existente cria um método de DataContext com o tipo de retorno da classe de entidade; soltar item em uma área vazia do Designer Relacional de Objetos (em qualquer painel) cria um método de DataContext que retorna um tipo gerado automaticamente. O tipo gerado automaticamente que é criado tem um nome que corresponde ao nome e às propriedades do procedimento ou da função que são mapeados para campos retornados pelo procedimento armazenado ou função.
Dica
Você pode alterar o tipo de retorno de um método de DataContext depois de adicioná-lo ao painel de métodos.Para inspecionar ou alterar o tipo de retorno de um método DataContext, selecione-o e inspecione a propriedade Tipo de Retorno na janela Propriedades.Para obter mais informações, consulte Como: Alterar o tipo de retorno de um método de DataContext (designer do/R).
Objetos que você arrasta do banco de dados para a superfície do Designer Relacional de Objetos serão nomeados automaticamente, com base no nome dos objetos no banco de dados. Se você arrastar o mesmo objeto mais de uma vez, um número será acrescentado ao final do novo nome para diferenciar os nomes. Quando os nomes dos objetos do banco de dados contêm espaços ou caracteres, que não são suportados no Visual Basic ou no C#, o espaço ou o caractere inválido é substituído por um sublinhado.
Consulte também
Tarefas
Passo a passo: criando classes LINQ to SQL (Designer Relacional de Objetos)