Usuário com melhor resposta
inner join com outra base

Pergunta
-
Preciso fazer um Join com outra base, mas não consigo, gera um erro:
var operador = (from c in help.Oper_OPERADOR
join user in corpText.USUARIO on c.USUARIO equals user.USUARIO
select new
{
c.USUARIO,
c.ID
}).ToList();//corpText.USUARIO esta em outro banco no mesmo servidor, e no projeto criei outro entiti para ele
Gera este erro:
Additional information: A expressão LINQ especificada contém referências a consultas associadas a diferentes contextos.
Junior Santana
Respostas
-
Junior,
Minha sugestão é vc executar 2 consultas diferentes primeiramente, gerando como resultado 2 coleções de objetos.
Na sequência vc utilizaria estes 2 retornos através de uma nova query LINQ, unificando desse modo os resultados.
Espero ter ajudado.
Abs
- Editado Renato GroffeMVP quarta-feira, 25 de março de 2015 03:40
- Sugerido como Resposta Renato GroffeMVP quarta-feira, 25 de março de 2015 03:40
- Marcado como Resposta Jr_inc quarta-feira, 25 de março de 2015 12:31
Todas as Respostas
-
Junior,
Minha sugestão é vc executar 2 consultas diferentes primeiramente, gerando como resultado 2 coleções de objetos.
Na sequência vc utilizaria estes 2 retornos através de uma nova query LINQ, unificando desse modo os resultados.
Espero ter ajudado.
Abs
- Editado Renato GroffeMVP quarta-feira, 25 de março de 2015 03:40
- Sugerido como Resposta Renato GroffeMVP quarta-feira, 25 de março de 2015 03:40
- Marcado como Resposta Jr_inc quarta-feira, 25 de março de 2015 12:31
-
Levando em conta que as bases estão no mesmo servidor, é possível sim:
Exemplo:
select * from Db1.dbo.Clients c join Db2.dbo.Messages m on c.ClientId = m.ClientId
usando linq, você teria que instanciar contextos de conexões diferentes, e depois relaciona-los.
Ou você usa um SqlCommand e passa o comando puro do SQL que eu mencionei.
Douglas Franco www.dzfweb.com.br