„Visual Studio“ neturi specialių įmontuotų įrankių, skirtų tiesiogiai diagnozuoti MVVMCross įrišimo klaidas. Tačiau jis siūlo įrankius, kurie gali būti naudingi diagnozuojant duomenų įrišimo problemas apskritai, o tai taip pat gali padėti įgyvendinant MVVMCross projektus. Štai kaip galite panaudoti šiuos įrankius:
XAML duomenų įrišimo diagnostika
Nors „Visual Studio“ „XAML Binding Flights“ įrankio langas nėra specialiai sukurtas „MVVMCross“, „Visual Studio“ „XAML Binding Flights“ langas gali padėti diagnozuoti duomenų įrišimo problemas XAML pagrįstame projektuose. Šį įrankį galima įsigyti „Visual Studio 2019“ versijoje 16.8 ir vėliau, įskaitant „Visual Studio 2022“. Norėdami patekti į jį, eikite į DEBUG> „Windows“> „XAML“ įrišimo gedimai derinimo sesijos metu. Šiame įrankio lange pateikiami įrišimo gedimai, pateikiamos failų vietos ir leidžia pereiti tiesiai prie nepavykusių įrišimų jūsų XAML failuose [1].
Bendrosios derinimo būdai
MVVMCross projektams, kurie dažnai apima tokias platformas kaip „Xamarin Forms“ ar UWP, galite naudoti bendrąsias derinimo būdus:
1. DEBUGTRACE: Įdiekite pasirinktinę „Debugtrace“ klasę savo „MVVMCross“ projekte, kad galėtumėte registruoti pėdsakų pranešimus derinimo metu. Tai gali padėti nustatyti įrišimo problemas stebint duomenų srautą tarp rodinio ir „ViewModel“ [2].
2. „PresentationTacesources.Tracelevel“: Nors dažniau naudojami WPF, galite nustatyti „PresentationTraceSources.Tracelevel“ pridėtą nuosavybę ant įrišimų, kad padidintumėte žodžių verbiškumą ir įgytumėte daugiau įžvalgos apie įrišimo operacijas. Tačiau tai paprastai nenaudojama MVVMCROSS projektuose [3].
3. Trečiųjų šalių įrankiai: Įrankiai, tokie kaip „Snoop for WPF“ ar panašūs vaizdinių medžių inspektoriai, gali būti pritaikyti arba naudojami kaip įkvėpimas derinant MVVMCross įrišimus, nors jie gali būti tiesiogiai pritaikyti.
4. Rankinis derinimas: naudokite lūžio taškus savo „ViewModel“ ir peržiūros kodą, kad rankiniu būdu apžiūrėtumėte duomenų srautą ir įrišimo operacijas. Tai gali padėti nustatyti, kur rišimai žlunga.
5. MVVMCROSS dokumentacija ir bendruomenė: Norėdami sužinoti konkrečias rekomendacijas apie įrišimo klausimų sprendimą MVVMCross projektuose [4] [5], skaitykite „Mvvmcross“ dokumentaciją ir bendruomenės forumus.
Apibendrinant galima pasakyti, kad nors „Visual Studio“ neturi konkrečių įrankių, skirtų „MVVMCross“ įrišimo klaidoms, galite panaudoti bendrąsias „XAML“ derinimo įrankius ir metodus, kad jūsų projektuose būtų galima pašalinti trikčių šalinimo problemas.
Citatos:[1] https://learn.microsoft.com/en-us/visualstudio/xaml-tools/xaml-data-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_information/
[4] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[5] https://www.mvvmcross.com/documentation/advanced/customizing-using-app ir-setup
[6] https://stackoverflow.com/questions/23101003/mvvmcross-inding-between-viewmodel-and-view-doesnt-work-buttons
[7] https://stackoverflow.com/questions/43019704/xamarin-forms-mvvmcross-inding-command-not-work
[8] https://learn.microsoft.com/en-us/answers/questions/1103760/bind-background-color-to-boxview-in-attached-behav