Ladenie nulových referenčných výnimiek v MVVMCross môže byť náročné, ale existuje niekoľko nástrojov a stratégií, ktoré vám môžu pomôcť. Tu je niekoľko podrobných prístupov:
ladiace nástroje a stratégie
1. Nastavenia výnimky Visual Studio **
Na efektívne ladenie NULL Reference Výnimky je rozhodujúce nakonfigurovať Visual Studio, aby sa zlomilo všetky výnimky bežného jazykového runtime (CLR). To sa dá dosiahnuť tak, že prejdete na ladenie> Windows> Nastavenia výnimky a začiarknutím políčka vedľa bežných výnimiek na beží jazyka. To vám umožní prejsť kódom v mieste, kde sa zvýši výnimka, a poskytne cenné informácie o tom, čo by mohlo spôsobiť nulovú referenciu [3].2. Zdroj prepojenia **
MVVMCross podporuje prepojenie zdroja, ktorý vám umožňuje prejsť zdrojovým kódom MVVMCross priamo z vášho projektu. Je to užitočné najmä na pochopenie toho, ako MVVMCross rieši určité operácie interne. Ak chcete povoliť prepojenie zdroja, prejdite na nástroje> Možnosti> ladenie> Všeobecné a začiarknite podporu zdrojového servera ** [7].3. Vzorka detského ihriska MVVMCross **
Ak máte problémy s problémami, ktoré sa nemôžete reprodukovať v jednoduchom testovacom prípade, skúste použiť aplikáciu Vzorku detských ihrísk MVVMCross. Táto vzorka je súčasťou zdrojového kódu MVVMCross a môže vám pomôcť izolovať problém reprodukciou v kontrolovanom prostredí [3].4. Podpora komunity **
Komunita MVVMCross je aktívna a užitočná. Ak ste uviaznutí, zvážte požiadanie o pomoc na platformách ako Stack Overflow alebo MVVMCross Slack Channel. Okrem toho môžete vyzdvihnúť problém na stránke MVVMCross GitHub, ak si myslíte, že ste našli chybu [3].5. Riešenie pre konkrétne problémy **
V prípade problémov, ako sú nulové odkazy pri používaní `mvxasynccommand`, uistite sa, že` mvx.iocprovider "je správne inicializovaný. Toto sa často dá vyriešiť manuálnym nastavením poskytovateľa IOC v testoch jednotky [1].6. MVVMCross Plugins **
Aj keď samotné doplnky nemusia priamo pomôcť s ladením nulových referencií, môžu zjednodušiť určité funkcie a znížiť zložitosť vašej kódovej základne, čo potenciálne uľahčuje identifikáciu a opravy problémov. Uistite sa, že akékoľvek doplnky, ktoré používate, sú správne inicializované a odkazované vo vašom projekte [9].7. Preskúmanie a testovanie kódu **
Nakoniec, dôkladné preskúmania kódu a testovanie jednotiek môžu pomôcť zachytiť výnimky z nulových referenčných výnimiek včas. Pred pokusom o ich použitie sa uistite, že všetky závislosti sú správne vstreknuté a aby boli vaše modely zobrazení správne nastavené.Kombináciou týchto stratégií môžete efektívnejšie ladiť a vyriešiť nulové referenčné výnimky vo svojich aplikáciách MVVMCross.
Citácie:[1] https://stackoverflow.com/questions/53597908/MVVM-Cross-null-references-wen-unit-testing-mxvasynccommand/53618570
[2] https://www.mvvmcross.com/documentation/plugins/3rd-party-plugins
[3] https://nicksnettravels.builttoroam.com/post-2018-07-31-debugging-and-contributing-o-mvvvmcross-aspx/
[4] https://stackoverflow.com/questions/18954938/NULLREFEFICE-EXECT-DURING-BINDING-WITH-MVVMCROS
[5] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-package
[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