Pergunta

Estou confuso quanto ao momento de criar instâncias de objetos ou classes auxiliar estática. Por exemplo, se eu chamar um método para atualizar um modelo de dados e apresentar ao banco de dados, eu criar uma instância da DataContext. Qual é o tempo de vida do que Datacontext e é ok para criar novas instâncias cada vez que é preciso haver uma nova atualização de dados?

No meu controlador eu criei uma instância de DataContext e reutilizar essa instância quando postagem de volta ao controlador por exemplo.

Foi útil?

Solução

O DataContext é uma classe muito leve e se destina a ser usado para uma unidade de trabalho. Normalmente, eu passar em uma fábrica que irá criar um DataContext apropriada conforme necessário. Eu normalmente irá envolver isso em um bloco usando e converter os resultados de uma lista (ou outro objeto) para que a consulta é executada no código controlador e os objetos resultantes passados ??para meu ponto de vista. Desta forma, o DataContext podem ser eliminados de (a partir do bloco usando) no método de tratamento.

A razão que injetar uma fábrica no controlador é duas vezes - ele permite que o DataContext a ser criado sob demanda e que me permite usar uma fábrica que gera um DataContext simulada para teste. Este último me permite evitar o uso do banco de dados real em meus testes de unidade.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top