Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kuinka bestsellereiden näyte käsittelee virheitä MVVMCrossissa


Kuinka bestsellereiden näyte käsittelee virheitä MVVMCrossissa


Bestsellereiden näyte MVVMCross käsittelee virheitä kahdella ensisijaisella tekniikalla:

1. BaseviewModel -luokat jaetulle virheenkäsittelylle: Bestsellers -näytteessä on "BaseviewModel` -luokka kapseloidakseen jaetun koodin, mukaan lukien virheenkäsittelymekanismit. Tämä lähestymistapa mahdollistaa yleisen virheenkäsittelylogiikan hallinnan eri näkymämalleissa. Esimerkiksi `Generalasyncload` -menetelmä on määritelty` BaseviewModel` -sovelluksessa, ja sitä käytetään erilaisissa näkymämallissa tietojen lataamiseen asynkronisesti. Tämä menetelmä voi sisältää virheenkäsittelylogiikan, joka on jaettu sovelluksen kautta.

2. App-tason virheen reititin: Näytteessä käytetään myös sovellustason "virheenreititin" hallitaksesi sitä, kuinka virheitä levitetään näkymämalleista käyttöliittymään. Tähän sisältyy injektoidun objektin, tyypillisesti `ierreRreporter`, käyttäminen, joka alustetaan singletonina sovelluksen rakentamisen aikana. Jokainen alustakohtainen käyttöliittymäprojekti merkitsee tämän singletonin tapahtumia `IerrorSource` -rajapinnan avulla. Tämä asennus mahdollistaa alustakohtaiset virheenäyttömekanismit, kuten UiAlertViews iOS: ssä tai paahtoleipäissä Androidissa, jolloin jokainen alusta voi käsitellä virheitä ympäristölle kotoperäisellä tavalla.

Käytännössä, kun virhe tapahtuu asynkronisen toiminnan aikana, kuten tietojen lataaminen verkkopalvelusta, virhe on kiinni ja raportoidaan käyttämällä `ierreReporter '. Tämän avulla sovellus voi näyttää käyttäjäystävällisiä virheilmoituksia tai suorittaa vaihtoehtoisia toimia, kuten toiminnan uudelleenjärjestelmä tai offline-tietojen lataaminen.

Esimerkiksi, jos `luokkalistViewModel` kohtaa virheen ladataan luokkia, se voi käyttää` Generalasyncload` -menetelmää "BaseviewModel" -virheen käsittelemiseen. Virhe ilmoitetaan sitten `ierRorreporter 'kautta, joka laukaisee sopivan käyttöliittymäilmoituksen alustan perusteella.

Tämä lähestymistapa varmistaa, että virheenkäsittely on sekä keskitetty että joustava, mikä mahdollistaa helpon sopeutumisen MVVMCross -kehyksen eri alustoihin ja skenaarioihin.

Viittaukset:
.
.
.
.
.
.
[7] https://www.telerik.com/blogs/blazor-best-practices
.
[9] https://visualStudiomagazine.com/articles/2018/05/08/build-a-xamarin.forms-aplication.aspx