Usuário com melhor resposta
ERRO AO ADICIONAR EM TABELA TEMPORÁRIA: Object reference not set to an instance of an object

Pergunta
-
Boa Tarde Pessoal,
Estou criando uma tela de entrada de estoque, onde o usuário vai adicionando os itens e clica no botão + para adicionar no gridview, e depois de concluído é movimentado o estoque através da gridview, pois bem, toda as vezes que eu tento adicionar o item na tabela temporária obtem o erro: Object reference not set to an instance of an object, na linha NovaLinha = Carrinho.NewRow(), Segue abaixo o código para entendimento:
Private Carrinho As DataTable
Private NovaLinha As DataRow
Private Sub CriaCarrinhoNormal()
Carrinho = New DataTable("consulta")
Carrinho.Columns.Add("Codigo_SAP", Type.[GetType]("System.String"))
Carrinho.Columns.Add("Grupo", Type.[GetType]("System.String"))
Carrinho.Columns.Add("Descricao", Type.[GetType]("System.String"))
Carrinho.Columns.Add("Saldo", Type.[GetType]("System.String"))
Session.Add("GeraDados", Carrinho)
End Sub
Private Sub Add()
Session.Add("GeraDados ", Carrinho)Carrinho = DirectCast(Session("GeraDados "), DataTable)
NovaLinha = Carrinho.NewRow()
NovaLinha("Codigo_SAP") = txtCodSAP.Text
NovaLinha("Grupo") = txtGrupo.Text
NovaLinha("Descricao") = txtDescricao.Text
NovaLinha("Saldo") = txtQtd.Text
Carrinho.Rows.Add(NovaLinha)
Session("GeraDados ") = Carrinho
MyGridView1.DataSource = Carrinho
MyGridView1.DataBind()
End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CriaCarrinhoNormal()
End If
End SubObrigado !!!!!
Respostas
-
Boa Tarde Edson, fiquei o dia inteiro quebrando a cabeça, e achei este erro juvenil, rsrsrs
Session.Add("GeraDados ", Carrinho) - o Gera dados estava com um espaço.
Session.Add("GeraDados", Carrinho) - fiz a correção e ficou ok
Obrigado Pela Ajuda!
- Marcado como Resposta Luiz Gustavo de Oliveira Costa quarta-feira, 28 de março de 2012 18:49
Todas as Respostas
-
Luiz, boa tarde.
Este erro é muito comum, você esta tentando acessar alguma coisa que não existe referencia para ele na memória.
Neste caso aconselho a você colocar um breakpoint e verificar em qual momento ele cria o objeto "Carrinho", porque com certeza ele esta como "null", quando você esta tentando adicionar alguma coisa nele.
Consultoria .NET
ANALISTA DESENVOLVEDOR
Se esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como resposta.
Blog .Net Descomplicado -
Boa Tarde Edson, fiquei o dia inteiro quebrando a cabeça, e achei este erro juvenil, rsrsrs
Session.Add("GeraDados ", Carrinho) - o Gera dados estava com um espaço.
Session.Add("GeraDados", Carrinho) - fiz a correção e ficou ok
Obrigado Pela Ajuda!
- Marcado como Resposta Luiz Gustavo de Oliveira Costa quarta-feira, 28 de março de 2012 18:49