Jak hledate chyby v blazor aplikacich? rubrika: Programování: .Net
Ahoj,
zkousim psat nejakou aplikaci v blazoru (client webassembly) a obcas mi vypadne v konsoli prohlizece chyba:
Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100] Unhandled exception rendering component: Object reference not set to an instance of an object. System.NullReferenceException: Object reference not set to an instance of an object. at Appname.Client.Components.UseCase1.Component1.<BuildRenderTree>b__18_0 (Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder __builder2) [0x0002b] in C:\Appname\Client\Components\UseCase1\Component1.razor:0 ....
Vetsinou najdu neinicializovany objekt hned, ale uz se mi stalo, ze jsem ho hledal pul hodiny...
Kouknul jsem do adresare obj na generovany kod, ale nedokazu urcit, na ktere radce je chyba.
Take jsem zkousel debuggovat v chromu pres ten postup s alt+D, ale watch pise, ze promenna je inicializovana, ale stejne to vyhodi exceptionu.
Chtel bych se zeptat, jestli na to je nejaky postup?
Dik moc za odpoved.
Problem asi nebude vo frameworku alebo generovanom kode. NullReferenceException moze vzniknut s cohokolvek v danom okoli.
Take jsem zkousel debuggovat v chromu pres ten postup s alt+D, ale watch pise, ze promenna je inicializovana, ale stejne to vyhodi exceptionu.
Aka premenna a kde? Je to ta spravna? Nie je problem vo vnutri inicializovanej premennej?
Chtel bych se zeptat, jestli na to je nejaky postup?
- Debug a lepsie hladat.
- Zapnut logovanie na klientovi. - https://docs.microsoft.com/en-us/aspnet/core/blazor/fundamentals/logging?view=aspnetcore-3.1
- Zapnut si nullable refernce types (je to typ na blazore som to este neskusal).
- Skusat skusat skusat... tu to bude pravdepodobne nejaka blbost.
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře