Ladění nulových referenčních výjimek v MVVMCross může být náročné, ale existuje několik nástrojů a strategií, které mohou pomoci. Zde je několik podrobných přístupů:
Ladění nástrojů a strategií
1. Nastavení výjimky vizuálního studia **
Pro účinné ladění nulových odkazů je zásadní nakonfigurovat Visual Studio tak, aby se rozbilo ve všech výjimkách běhu běhu jazyka (CLR). Toho lze provést tím, že se chystáte na ladění> Nastavení výjimek Windows> a zaškrtnutím políčka vedle výjimek z běžného jazyka. To vám umožní projít kódem v okamžiku, kdy je výjimka zvýšena, a poskytnout cenné informace o tom, co by mohlo způsobit odkaz na nulový [3].2. Propojení zdroje **
MVVMCross podporuje propojení zdroje, které vám umožní projít zdrojovým kódem MVVMCross přímo z vašeho projektu. To je zvláště užitečné pro pochopení toho, jak MVVMCross zpracovává určité operace interně. Chcete -li povolit propojení zdroje, přejděte na Nástroje> Možnosti> Ladění> Obecné a zaškrtnutí podpory zdrojového serveru ** [7].3. Vzorek hřiště Mvvmcross **
Pokud máte problémy, které nemůžete reprodukovat v jednoduchém testovacím případě, zkuste použít aplikaci MVVMCross Playground. Tento vzorek je součástí zdrojového kódu MVVMCross a může vám pomoci izolovat problém jeho reprodukcí v kontrolovaném prostředí [3].4. podpora komunity **
Komunita MVVMCross je aktivní a užitečná. Pokud jste uvízli, zvažte požádání o pomoc na platformách, jako je přetečení zásobníku nebo MVVMCross Slack Channel. Kromě toho můžete na stránce MVVMCross GitHub vyvolat problém, pokud se domníváte, že jste našli chybu [3].5. Řešení pro konkrétní problémy **
Pokud jde o problémy, jako jsou odkazy na NULL při použití `mvxasynccOmmand`, ujistěte se, že` mvx.iocprovider` je řádně inicializována. To lze často vyřešit ručním nastavením poskytovatele IOC ve vašich jednotkových testech [1].6. Pluginy MVVMCross **
Zatímco samotné pluginy nemusí přímo pomoci s laděním nulových odkazů, mohou zjednodušit určité funkce a snížit složitost vaší kódové základny, což potenciálně usnadňuje identifikaci a opravu problémů. Ujistěte se, že jakékoli pluginy, které používáte, jsou ve vašem projektu správně inicializovány a odkazovány [9].7. Kodexní kontrola a testování **
A konečně, důkladné recenze kódu a testování jednotek mohou pomoci zachytit nulové referenční výjimky brzy. Zajistěte, aby byly všechny závislosti správně injikovány a aby byly vaše modely pohledu správně nastaveny před pokusem o jejich použití.Kombinací těchto strategií můžete efektivněji ladit a vyřešit nulové referenční výjimky ve vašich aplikacích MVVMCross.
Citace:[1] https://stackoverflow.com/questions/53597908/mvvm-cross-null-reference-When-ninit-totest-mxvasynccommand/53618570
[2] https://www.mvvmcross.com/documentation/plugins/3rd-party-plugins
[3] https://nicksnettravels.BuiltToroam.com/post-2018-07-31-debugging-and-contributing-tomvvmcross-spx/ aspx/ aspx/ aspx/
[4] https://stackoverflow.com/questions/18954938/nullreference-exception-During-binding-with-mvvmcross
[5] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-packages
[6] https://github.com/mvvmcross/mvvmcross/issues/4286
[7] https://www.mvvmcross.com/documentation/contributing/debugging-with-symbols
[8] https://www.nuget.org/packages/mvvmcross.plugin.ble/
[9] https://www.mvvmcross.com/documentation/plugins/getting-started