none
Forma mais facil de pegar o id do ultimo registro na tabela RRS feed

  • Pergunta

  • Ola pessoal blz?

    Seguinte tenho uma tabela "termo" e outras que relacionam com ela "beneficiario" e "produtos".

    Bom o problema é o seguinte antes de inserir os registros de beneficiario e produtos eu preciso descobrir qual é o idTermo do registro que elas dependem da tabela "registro", como faço para pegar esse id??

    Quando eu debugo e coloco o mouse em cima de  repositorioTermoReferencia.AddTermo(termo); ele me mostra o id, mais não consigo recupera-lo usando tipo termo.idTermo.

     

    Vou postar uma parte do meu código

    Estou simulando   produto_Aux.idTermo = 2; para não ir nullo.

    Valew

     /*ADICIONA TERMO*/
                        repositorioTermoReferencia.AddTermo(termo);


                        /*ADICIONA PRODUTO*/
                        repositorioTermoReferencia.AddProduto(produto);
                        repositorioTermoReferencia.Save();
                 
                        /* INSERÇÃO DOS REGISTROS DE PRODUTO */

                        string auxString = Request.Form["contadorEntrega"];
                        int auxInt = Convert.ToInt16(auxString);
              

                        for (int x = 1; x < auxInt;x++ )
                        {
              

                            Produto produto_Aux = new Produto();

                            produto_Aux.formaFornecimento = Request.Form["formaFornecimento" + x];

                            string prazo = Request.Form["prazo" + x];
                            produto_Aux.prazo = Convert.ToInt16(prazo);

                            produto_Aux.local = Request.Form["local" + x];
                            produto_Aux.condicaoEntrega = Request.Form["condicaoEntrega" + x];
                            produto_Aux.transporteUtilizado = Request.Form["transporteUtilizado" + x];

                            string faturamento = Request.Form["faturamento" + x];
                            produto_Aux.faturamento = Convert.ToDouble(faturamento);


                            produto_Aux.idTermo = 2;

                            repositorioTermoReferencia.AddProduto(produto_Aux);
                            repositorioTermoReferencia.Save();

                        }

    quinta-feira, 9 de dezembro de 2010 14:15

Respostas

  • Boa noite!

    Depois de

    repositorioTermoReferencia.AddTermo(termo);
    

    eu já colocaria o

    repositorioTermoReferencia.Save();
    

    antes de salvar o produto. O EF consegue facilmente te retornar o id do objeto salvado, para que vc possa utilizá-lo e para justamente não realizarmos uma intervenção do tipo "pegar o último registro" quando se quer o próprio registro que está sendo salvo. Isso não funciona caso alguém salvar um Termo ao mesmo tempo que você.

    Dê uma olhada nisso!

    Abs e qq coisa entre em contato!

    segunda-feira, 24 de janeiro de 2011 02:59

Todas as Respostas

  • Cara ainda não entendi muito bem =(

    Contato:albertim_brasil@hotmail.com - Se ajudei, marca como útil.
    Twitter: Me siga!!
    Blog:http://dotnettime.spaces.live.com/

    quinta-feira, 9 de dezembro de 2010 20:40
  • Fala,

    Pra te ajudar, seria legal se você postasse aqui o código desse seu repositório... Aí vai ter com sabermos o que pode estar acontecendo, ou sugerir alguma mudança...

    Além disso, precisamos saber o que você está usando para fazer a persistência: NHibernate, EF, L2S...?

     


    Forte abraço,

    André Borges Medeiros
    MCT, MCPD, MCTS

    Procurando treinamento de ASP.NET MVC?

    >> Se a resposta solucionar sua dúvida, favor Votar como Útil
    sexta-feira, 10 de dezembro de 2010 12:09
    Moderador
  • Boa noite!

    Depois de

    repositorioTermoReferencia.AddTermo(termo);
    

    eu já colocaria o

    repositorioTermoReferencia.Save();
    

    antes de salvar o produto. O EF consegue facilmente te retornar o id do objeto salvado, para que vc possa utilizá-lo e para justamente não realizarmos uma intervenção do tipo "pegar o último registro" quando se quer o próprio registro que está sendo salvo. Isso não funciona caso alguém salvar um Termo ao mesmo tempo que você.

    Dê uma olhada nisso!

    Abs e qq coisa entre em contato!

    segunda-feira, 24 de janeiro de 2011 02:59