Autor Beitrag
erfahrener Neuling
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 233
Erhaltene Danke: 19

Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
BeitragVerfasst: Di 19.04.16 14:13 
Hallo,

hab gerade eine merkwürdige NullReferenceException erhalten. Wie man im Bild sehen kann, deklariere ich immer vorher die Größe, bei Werten größer 1 gabs bis jetzt kein Problem. Jetzt allerdings schon und irgendwas übersehe ich mal wieder.
Exception

Was hab ich falsch gemacht? Bzw wieso bleibt die Length des Array bei 1 null?

Danke schonmal im Vorraus ;)
Einloggen, um Attachments anzusehen!


Zuletzt bearbeitet von erfahrener Neuling am Di 19.04.16 14:46, insgesamt 1-mal bearbeitet
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Di 19.04.16 14:19 
Die Länge kann nicht null sein. Wenn etwas null is dann das removeArray. In deinem gezeigten Code sollte das aber nicht passieren können. Ich würde nochmal denn Code sauber kompilieren und dann schauen was passiert. Die Schleife ist übrigens überflüssig. Der Default Value eines bool ist false.
erfahrener Neuling Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 233
Erhaltene Danke: 19

Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
BeitragVerfasst: Di 19.04.16 14:29 
Hmmm ist ganz komisch. Der Fehler tritt nur auf, wenn ich vorher im Programm etwas bestimmtes mache, was mit den Variablen aber (fast) gar nichts zu tun hat :nixweiss: Also nochmal alles durch debuggen :motz:


Zuletzt bearbeitet von erfahrener Neuling am Di 19.04.16 14:39, insgesamt 1-mal bearbeitet
erfahrener Neuling Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 233
Erhaltene Danke: 19

Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
BeitragVerfasst: Di 19.04.16 14:38 
Ist erledigt. Lösung: (mal wieder typischer Anfängerfehler) Das Array war unter Rücksichtsnahme einer bestimmten User-Eingabe zum falschen Zeitpunkt (2 Zeilen zu spät) deklariert.

Was lern ich mal wieder daraus: Darauf achten, wann welche Events (auch wenn sie noch so unscheinbar erscheinen) ausgelöst werden.

Trotzdem danke und schönen Tag noch :)
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Di 19.04.16 21:21 
Zitat:
Was lern ich mal wieder daraus: Darauf achten, wann welche Events (auch wenn sie noch so unscheinbar erscheinen) ausgelöst werden.


Jein ;) Richtig wäre in Events keinen ~Code~ direkt zu haben. Sondern relevanten Code in richtig benannte Methoden/Klassen zu verlagen die von Events aufgerufen werden. Und in diesen Methoden befindet sich dann auch richtige Parameterprüfungen die den gültigen Aufrufzustand prüfen und gegebenenfalls passende Exceptions werfen mit denen man dann tatsächlich denn Fehler ohne große Debugging Aktion meist so erahnen kann.