Array
(
)

c# para mobile

Carlos Silva
   - 18 dez 2009

pow galera tudo bem
tenho um problema no c# para mobile
quando faço todo esse processo
funciona normalmente creio eu que ate possui metodos que nao tem utilidade ai mais foi devido ao desespero por nao conseguir

o problema e que logo apos o insert da comand text rodar
insere o dado na tabela do banco normal
porem nao da o commit
tudo se perde quando fecho a app
alguem poderia me dar uma luz ai

Code:

 dsagoraTableAdapters.clienteTableAdapter CTA = new agora.dsagoraTableAdapters.clienteTableAdapter();
            SqlCeConnection com = CTA.Connection;
            dsagora.clienteDataTable CDT = new dsagora.clienteDataTable();
           
           
            CTA.Fill(CDT);
     
            CTA.Connection.Open();
            SqlCeTransaction trans = CTA.Connection.BeginTransaction();
            trans.Connection.BeginTransaction();

            SqlCeCommand cmd = CTA.Connection.CreateCommand();
            cmd.CommandText = "INSERT INTO cliente(ID, NOME) VALUES (9665,'@nome')";
           

            cmd.ExecuteNonQuery();
            this.dsagora.cliente.AcceptChanges();
         
            this.clienteTableAdapter.Fill(this.dsagora.cliente);
            this.clienteDataGrid.Update();
            trans.Commit(CommitMode.Immediate);
           
               
            CTA.Connection.Close();

Netasper
   - 22 dez 2009

Amigo,   Ja tenteou usar try, catch e finally?

Carlos Silva
   - 23 dez 2009

ja sim
fiz de tudo
ate com dataset tipado ja fiz
e nao deu nao queria partir para web service mais pelo geito
e o unico geito
rere
vlw a ideia ai amigo
se tiver mais pode mandar

Eleuterio Gonzalez
   - 16 fev 2010

se consegui me post como

Alexandre Machado
   - 07 mar 2010

cara,   voce ja fez usando o using e sem usar transaction?   como voce esta executando apenas uma operação no banco, não precisaria do transaction.   algo assim,   using(sqlconnection cnx = new sqlconnection) { cnx.open(); sqlcommand cmd = new sqlcommand("insert into table ....",cnx); cmd.executenonquery(); cnx.close(); }   obs.: escrevi o codigo direto aqui, por isso tem que corrigir a sintaxe.

Alexandre Machado
   - 08 mar 2010

vi agora, não precisa do cnx.close()    

Devmedia Cursos
   - 13 mar 2010

Normalmente quando você compila novamente o projeto, ele pode estar substiuindo seu banco de dados, tente fazer um teste quanto ah isso.