23 messaggi dal 27 novembre 2015
Salve,
sto realizzando un progettino aziendale per visualizzare dei rapportini tramite pagina web.

[HttpGet]
        public ActionResult Dettagli(decimal id)
        {
            Rapportini.Models.RapportiniEntities dc = new Rapportini.Models.RapportiniEntities();

            Rapportini.Models.RAP_TESTA Testa = dc.RAP_TESTA.Where(r => r.id.Equals(id)).FirstOrDefault();

            List<Rapportini.Models.RAP_RIGHE> Righe = dc.RAP_RIGHE.Where(r => r.codice_testa.Equals(id)).ToList();

            RapportinoDetails Rapportino = new RapportinoDetails();
            Rapportino.id_testa = Testa.id;
            Rapportino.cliente = Testa.codice_cliente;
            Rapportino.destinazione = Testa.codice_destinazione.ToString();
            Rapportino.tipo_testa = Testa.tipo_intervento;
            Rapportino.ragione = Testa.ragione_sociale;
            Rapportino.indirizzo = Testa.indirizzo;
            Rapportino.cap = Testa.cap;
            Rapportino.citta = Testa.citta;
            Rapportino.provincia = Testa.provincia;
            Rapportino.p_iva = Testa.partita_iva;
            Rapportino.note = Testa.note;
            Rapportino.data = Testa.data_inserimento;
            Rapportino.operatore = Testa.utente_inserimento;
            Rapportino.id_metodo = (decimal)Testa.id_testa_metodo;

            int i = 0;

            foreach(var item in Righe)
            {
                Rapportino.posizione_riga[i] = item.posizione_riga;
                Rapportino.tipo_riga[i] = item.tipo_riga;
                Rapportino.codice_articolo[i] = item.codice_articolo;
                Rapportino.descrizione[i] = item.descrizione;
                Rapportino.um[i] = item.unita_misura;
                Rapportino.quantita[i] = (decimal)item.quantita;
                Rapportino.prezzo[i] = (decimal)item.prezzo_netto;
                i++;
            }

            return View(Rapportino);
        }


Ho creato una classe apposita da usare come model nella vista, alla quale associo i valori singoli presenti nella testa ed i valori multipli(o anche singoli) delle righe.
Prima del foreach tutto funziona, ma appena vi entra da in output questo errore:
Riferimento a un oggetto non impostato su un'istanza di oggetto.
Riferendosi a:
Rapportino.posizione_riga[i] = item.posizione_riga;
Che problema è? Da cosa è dato?
Grazie mille ^^
64 messaggi dal 16 novembre 2009
Penso che qui ci sia un errore
foreach(var item in Righe)
{
  Rapportino.posizione_riga[i] = item.posizione_riga;
  Rapportino.tipo_riga[i] = item.tipo_riga;
  Rapportino.codice_articolo[i] = item.codice_articolo;
  Rapportino.descrizione[i] = item.descrizione;
  Rapportino.um[i] = item.unita_misura;
  Rapportino.quantita[i] = (decimal)item.quantita;
  Rapportino.prezzo[i] = (decimal)item.prezzo_netto;
  i++;
}

ammesso che tutto funzioni vedi solo l'utlima riga (item) in righe, forse è meglio che passi Righe direttamente alla vista tramite viewbag o viewdata e dopo stampi la tabella
23 messaggi dal 27 novembre 2015
Grazie, anche se non era quello l'errore.
Non avevo dichiarato come "new" le liste che utilizzavo :)

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.