Visual Studio nemá na priame diagnostikovanie chýb viazania MVVMCross. Ponúka však nástroje, ktoré môžu byť užitočné pri diagnostikovaní problémov s väzbou na údaje všeobecne, čo by mohlo pomôcť aj s projektmi MVVMCross. Takto môžete tieto nástroje využiť:
XAML DIAGNOSTICKÉ DIAGNOSTIKY
Aj keď to nie je špeciálne navrhnuté pre MVVMCross, okno nástrojov na zlyhanie viazaných vizuálnych štúdií spoločnosti Visual Studio môže pomôcť diagnostikovať problémy s väzbou na údaje v projektoch založených na XAML. Tento nástroj je k dispozícii vo Visual Studio 2019, verzia 16.8 a neskôr, vrátane Visual Studio 2022. Ak chcete získať prístup, prejdite na ladenie> Windows> XAML Binding zlyhania počas ladiacej relácie. Toto okno s nástrojmi obsahuje zlyhania viazania, poskytuje umiestnenie súborov a umožňuje vám prejsť priamo k neúspešným väzbám vo vašich súboroch XAML [1].
Všeobecné techniky ladenia
V prípade projektov MVVMCross, ktoré často zahŕňajú platformy ako Xamarin Forms alebo UWP, môžete použiť všeobecné techniky ladenia:
1. Debugtrace: Implementujte vlastnú triedu `Debugtrace` do svojho projektu MVVMCross na zaznamenanie sledovacích správ počas ladenia. To môže pomôcť identifikovať problémy viazania monitorovaním toku údajov medzi pohľadom a ViewModel [2].
2. PresentationTracessources.Tracelevel: Aj keď sa častejšie používajú vo WPF, môžete nastaviť „prezentačné zdroje.Tracelevel“ pripevnenú vlastnosť na väzby na zvýšenie výrečnosti a získanie väčšieho prehľadu o väzbových operáciách. To sa však zvyčajne nepoužíva v projektoch MVVMCross [3].
3. Nástroje tretích strán: Nástroje ako Snoop pre WPF alebo podobných inšpektorov vizuálnych stromov je možné prispôsobiť alebo použiť ako inšpiráciu na ladenie väzieb MVVMCross, hoci nemusia byť priamo použiteľné.
4. Manuálne ladenie: Použite body prerušenia vo svojom ViewModel a zobrazte kód na manuálnu kontrolu toku údajov a väzbových operácií. To môže pomôcť zistiť, kde viazania zlyhávajú.
5. MVVMCross Dokumentácia a komunita: Pozrite sa na dokumentáciu MVVMCross a fóra komunity, kde nájdete konkrétne usmernenie týkajúce sa riešenia záväzných problémov v projektoch MVVMCross [4] [5].
Stručne povedané, zatiaľ čo Visual Studio nemá konkrétne nástroje na chyby viazania MVVMCross, môžete využiť všeobecné nástroje a techniky ladenia XAML na riešenie problémov s väzbou vo vašich projektoch.
Citácie:[1] https://learn.microsoft.com/en-us/visualstudio/xaml-tools/xaml-data-binding-diagnostics?view=vs-2022
[2] https://www.mvvmcross.com/documentation/platform/uwp/universal-windows-platform-uwp
[3] https://www.reddit.com/r/csharp/comments/572b0d/how_do_you_guys_deal_with_wpf_lack_of_of_information/
[4] https://www.mvvmcross.com/documentation/funmamentals/data-binding
[5] https://www.mvvmcross.com/documentation/advanced/custoughing-using-app-and-setup
[6] https://stackoverflow.com/questions/23101003/mvvmcross-binding-between-viewModel-and-work-work-work-for-buttons
[7] https://stackoverflow.com/questions/43019704/xamarin-forms-mvvmcross-binding-command-not-work
[8] https://learn.microsoft.com/en-us/answers/questions/1103760/bind-background-coor-to-boxview-in-atached-behav