Usuário com melhor resposta
Inclusao EF em duas tabelas sem chave estrangeira

Pergunta
-
Bom dia, tudo bem?
Tenho o seguinte ambiente
Tabela Funcionario - Tabela CargoFuncionario
Na tabela cargofuncionario eu tenho uma coluna IdFuncionario, no entanto nao eh uma chave estrangeira, teria algum jeito simples de fazer a inclusao sem fazer um select na tabela funcionario para pegar o id do funcionario incluso? Caso nao tenha, qual o melhor jeito de trazer só o Ultimo Id da tabela funcionario em EF?
Muito obrigado.
Rafael Poveda- Tipo Alterado Rafael.Poveda quarta-feira, 27 de julho de 2011 15:25
- Movido Seilor Bonancio Junior quarta-feira, 27 de julho de 2011 16:34 (De:ASP.NET)
Respostas
-
Rafael o ultimo id vc pode usar um max do linq ou lastordefault.
Cara o correto seria ter chave estrangeira pq vc não usa?
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 1 de agosto de 2011 22:33
- Marcado como Resposta AndreAlvesLimaModerator sábado, 13 de agosto de 2011 12:23
-
o retorno do max pode ser feito assim:
int ultimoId = ex.Cliente.Max(c => c.Id);
se você mepear direto no modelo, não irá funcionar, se você criar a referencia entre as tabelas e mapear de novo, ai sim irá funcionar
Olavo Oliveira Neto
http://olavooneto.wordpress.com
Se for útil marque como resposta e faça um Developer feliz :)- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 1 de agosto de 2011 22:33
- Marcado como Resposta AndreAlvesLimaModerator sábado, 13 de agosto de 2011 12:23
Todas as Respostas
-
Rafael o ultimo id vc pode usar um max do linq ou lastordefault.
Cara o correto seria ter chave estrangeira pq vc não usa?
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 1 de agosto de 2011 22:33
- Marcado como Resposta AndreAlvesLimaModerator sábado, 13 de agosto de 2011 12:23
-
Como que eu retorno o MAX? tentei utilizar ontem e nao consegui.
Eu tentei criar a chave estrangeira direto pelo Entity, porém ele fica dando erro de mapeamento, se eu cirar via SQL o Entity reconhece?
Rafael Poveda- Sugerido como Resposta Olavo Oliveira NetoModerator quinta-feira, 28 de julho de 2011 11:26
- Não Sugerido como Resposta Olavo Oliveira NetoModerator quinta-feira, 28 de julho de 2011 11:26
-
o retorno do max pode ser feito assim:
int ultimoId = ex.Cliente.Max(c => c.Id);
se você mepear direto no modelo, não irá funcionar, se você criar a referencia entre as tabelas e mapear de novo, ai sim irá funcionar
Olavo Oliveira Neto
http://olavooneto.wordpress.com
Se for útil marque como resposta e faça um Developer feliz :)- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 1 de agosto de 2011 22:33
- Marcado como Resposta AndreAlvesLimaModerator sábado, 13 de agosto de 2011 12:23