Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kioshy

Problemas com DataSet Multi Tabela

Recommended Posts

Olá PessoALL

 

Seguinte tenho um DataSet que é multi tabela, sendo q ele possui pelo menos 5 tabelas.

 

Meu problema é que na hora q tento inserir os dados na segunda tabela ele apresenta um erro:

 

 

 

Erro de Servidor no Aplicativo '/Reserva'.

 

--------------------------------------------------------------------------------

 

Esta linha já pertence a outra tabela.

Descrição: Ocorreu uma exceção não tratada durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código.

 

Detalhes da Exceção: System.ArgumentException: Esta linha já pertence a outra tabela.

 

Erro de Origem:

 

 

Linha 71: //try

Linha 72: //{

Linha 73: Dados.Tables["DadosTit"].Rows.Add(Titular.Tables[0].Rows[0]);

Linha 74: Dados.AcceptChanges();

Linha 75: /*}

 

 

 

Arquivo de Origem: c:\inetpub\wwwroot\reserva\persistdados.cs Linha: 73

 

Rastreamento de Pilha:

 

 

[ArgumentException: Esta linha já pertence a outra tabela.]

System.Data.DataTable.InsertRow(DataRow row, Int32 proposedID, Int32 pos) +450

System.Data.DataRowCollection.Add(DataRow row) +13

IT.Reserva.PersistDados.SetTitular(DataSet Titular) in c:\inetpub\wwwroot\reserva\persistdados.cs:73

IT.Reserva.frmCPF.Button1_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\reserva\frmcpf.aspx.cs:72

System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108

System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBa

ckEvent(String eventArgument) +57

System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18

System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33

System.Web.UI.Page.ProcessRequestMain() +1292

 

 

 

 

 

--------------------------------------------------------------------------------

 

Informações sobre a Versão: Microsoft .NET Framework Versão:1.1.4322.2032; Versão do ASP.NET:1.1.4322.2032

 

 

 

A minha função q insere os dados é a seguinte:

 

public void SetTitular(DataSet Titular)			{				  try				  {						Dados.Tables["DadosTit"].Rows.Add(Titular.Tables[0].Rows[0]);						Dados.AcceptChanges();				  }				  catch(Exception)				  {						Dados.RejectChanges();				  }			}
O DataSet Titular vem com os dados certinhos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salve galera!

 

Bom, eu consegui resolver o problema na verdade era simples, eu tinha q criar um DataRow com a mesma estrutura do DataSet e inserir os dados apartir desse DataRow.

 

Minha function ficou assim:

 

public void SetTitular(DataSet Titular){  DataRow Dr = Dados.Tables["DadosTit"].NewRow();  for(int i = 0; i <= 17; i++)  {	Dr[i] = Titular.Tables[0].Rows[0][i].ToString();  }  try  {	Dados.Tables["DadosTit"].Rows.Add(Dr);	Dados.AcceptChanges();  }  catch(Exception)  {	Dados.RejectChanges();  }}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.