webForumDet fria alternativet

Hur felsöker man "NullReferenceException"

.NET

5 svar · 499 visningar · startad av inspiro

Medlem sedan sep. 2005673 inlägg
Frågan#1

Jag får ett gammalt hederlig NullReferenceException... men hur sjutton felsöker man det? Har ingen aning om var någonstans det uppkommer och det är miljarder filer i projektet... :(

Medlem sedan jan. 200568 inlägg
#2

debug:a projektet

Medlem sedan sep. 2005673 inlägg
#3

Jovisst, men var börjar jag... vet ju inte alls var någonstans felet uppstår, hittar inga ledtrådar i felmeddelandet. :/

Medlem sedan maj 20018 027 inlägg
#4

Det kanske uppstår i ett särskilt läge, just när du ska utföra en åtgärd, etc. Då lär ju felet ligga någonstans i den kod som utförs i just det läget. Då slipper du undersöka alla filer. :)

Medlem sedan sep. 2005673 inlägg
#5

Jo, det gör det ju, men jag fattar inte hur jag ska börja felsöka ändå.... vet ändå inte hur och var koden exekveras (det är en jäkla massa assemblys och klasser och presentationslagret är xsl så det finns ju ingen codebehind direkt bakom presentationen).

Har exempelvis ett annat felmeddelande som ser ut så här:

System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. Parameter name: Index was out of range. Must be non-negative and less than the size of the collection.

at System.Collections.CollectionBase.System.Collections.IList.get_Item(Int32 index) at Process.ProcessObjectModel.JournalEntryCollection.get_Item(Int32 index) at Process.ProcessObjectModel.JournalEntryCollection.get_Document() at Process.ProcessObjectModel.ProcessDefinition.get_Document() at Core.Presentation.ModuleGenerator.RenderTo(Object Module, String Style, Object Output, BaseObjectParameterCollection ParameterCollection)

Ok, felmeddelandet kan jag nog lista ut men VAR finns felet, i vilken klass, i vilken kod, i vilket cs-dokument!?!? JournalEntryCollection.cs körs ju inte ens när jag försöker debugga??? Om jag sätter en breakpoint där oavsett var någonstans så står det bara att "The breakpoint will not currently be hit. No symbols have been loaded for this document".

Medlem sedan nov. 20022 355 inlägg
#6

Nej, men när sedan dll'en laddas så kommer det bli korrekt. HAr du provat att sätta en breakpoint där och köra programmet?

251 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)