Generowanie raportów WPF

0

Witam.

Ma ktoś może pomysł dlaczego ta funkcja:


public void GenerateReport()
        {
            foreach (var inv in invoices)
            {
                if (reports.Any(n => n.Localisation == inv.Reciever.Address.PostalCode.First().ToString((CultureInfo.InvariantCulture)) == false))
                {
                    var report = new Report
                    {
                        Localisation = inv.Reciever.Address.PostalCode.First().ToString(CultureInfo.InvariantCulture)
                    };

                    double sumaKwotFaktur = 0;
                    foreach (var invoiceTMP in
                            invoices.Where(
                                n =>
                                    n.Reciever.Address.PostalCode.First().ToString(CultureInfo.InvariantCulture) ==
                                    inv.Reciever.Address.PostalCode.First().ToString(CultureInfo.InvariantCulture)))
                    {
                        sumaKwotFaktur += Convert.ToDouble(invoiceTMP.GrossAmount);
                    }

                    report.SumOfAmount = sumaKwotFaktur.ToString(CultureInfo.InvariantCulture);
                    reports.Add(report);
                }

                ReportDataGrid.ItemsSource = reports;
          
        }

 

Powoduje zwrócenie wyjątku "Wartość nie może być zerowa" ?

user image

user image

0

Poniewaz istnieje taki Address ktory jest nullem

0

Jak cos jest nullem to nie istnieje:) a poza tym niekoniecznie adres, Reciever, Address czy nawet postalcode. probujesz wywolac jakas czynnosc na nullu, czyli na czyms co nie istnieje. Odpal debugerra jescze raz i sprawdz po kolei ktora z rzeczy wymienionych przeze mnie nie istnieje. Np. jesli jak kolega wyzej wspomnial address jest nullem to nie mozesz wywolac postalcode z niego bo on nie istnieje. visual studio ci pozwoli na to bo obiekty sa polaczone, ale wywolac je mozesz dopiero jak beda istniec.

0

Ok poradziłem już sobie z tym.

Problem był dużo bardziej złożony niż tylko nieistniejące odniesienie.

Problem stanowiłzły format danych ( przecinek zamiast kropki w liczbach )

Dodałem FormatProvidera wszędzie gdzie się dało i wszystko śmiga.

1 użytkowników online, w tym zalogowanych: 0, gości: 1