Odpravljanje napak NULL referenčnih izjem v MVVMcrossu je lahko izziv, vendar lahko pomaga več orodij in strategij. Tu je nekaj podrobnih pristopov:
Orodja in strategije za odpravljanje napak
1. Nastavitve izjem v vizualnem studiu **
Za učinkovito odpravljanje napak na referenčnih izjemah je ključnega pomena, da konfigurirate Visual Studio, da se razbije na vseh izjemah skupnega jezika (CLR). To lahko storite tako, da se odpravite na odpravljanje napak> Windows> Nastavitve izjem in preverjanje polja poleg izjem skupnega jezika. To vam bo omogočilo, da stopite skozi kodo na mestu, ko je izjema dvignjena, kar bo zagotovilo dragocen vpogled v to, kar lahko povzroči ničelno referenco [3].2. Povezovanje vira **
MVVMcross podpira povezovanje virov, kar vam omogoča, da neposredno stopite skozi izvorno kodo MVVMCross neposredno iz vašega projekta. To je še posebej koristno za razumevanje, kako MVVMcross obvlada nekatere operacije notranje. Če želite omogočiti povezovanje virov, pojdite na Orodja> Možnosti> Odpravljanje napak> Splošno in Tic Omogoči podporo izvornega strežnika ** [7].3. Vzorec igrišča mvvmcross **
Če imate težave, ki jih v preprostem testnem primeru ne morete razmnoževati, poskusite uporabiti vzorčno aplikacijo MVVMcross Playground. Ta vzorec je vključen v izvorno kodo MVVMcross in vam lahko pomaga izolirati težavo tako, da jo reproducirate v nadzorovanem okolju [3].4. Podpora skupnosti **
Skupnost MVVMcross je aktivna in koristna. Če ste obtičali, razmislite o pomoči na platformah, kot sta Stack Overflow ali MVVMcross Slack Channel. Poleg tega lahko na strani mvvmcross github sprostite težavo, če menite, da ste našli napako [3].5. Reševanje za posebna vprašanja **
Za vprašanja, kot so null reference pri uporabi `mvxasyncCommand`, se prepričajte, da je` mvx.iocprovider` pravilno inicializiran. To lahko pogosto rešite tako, da ročno nastavite ponudnika MOK v preizkusih enot [1].6. Vtičniki mvvmcross **
Medtem ko sami vtičniki morda ne bodo neposredno pomagali pri odpravljanju napak pri ničelnih referencah, lahko poenostavijo določene funkcionalnosti in zmanjšajo kompleksnost vaše kodne baze, kar lahko olajša prepoznavanje in odpravljanje težav. Prepričajte se, da so vsi vtičniki, ki jih uporabljate, pravilno inicializirali in navajali v vašem projektu [9].7. Pregled kode in testiranje **
Končno lahko temeljita pregledi kode in testiranje enot pomagajo zgodaj ujeti nulske referenčne izjeme. Prepričajte se, da so vse odvisnosti pravilno vbrizgane in da se vaši modeli pogleda pravilno nastavijo, preden jih poskušate uporabiti.S kombiniranjem teh strategij lahko učinkoviteje odpravljate napake in rešite nulske referenčne izjeme v aplikacijah MVVMcross.
Navedbe:[1] https://stackoverflow.com/questions/53597908/mvvm-cross-null-references-when-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-to-mvvmcross-aspx/
[4] https://stackoverflow.com/questions/18954938/NullReference-Exception-during-bing-with-mvvmcross
[5] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-packages
[6] https://github.com/mvvmcross/mvvmcross/isissue/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-start