Il modo più comodo per implementare i modelli utilizzati dal livello di accesso al servizio di un'applicazione Xamarin

1

Sono nuovo della tecnologia Xamarin e sto lavorando a un'applicazione web Asp.NET Core che fornisce fondamentalmente micro-servizi che verranno utilizzati da un'applicazione Xamarin.Forms.

Quindi la mia API Web offrirà un bel po 'di operazioni, e ognuna di esse userebbe la propria classe di modello per rappresentare la propria risposta e i propri parametri.

Ciò che mi infastidisce è che avrò un sacco di classe modello da duplicare dall'API all'applicazione Xamarin. Non è la fine del mondo, ma mi stavo chiedendo se non esistesse un qualche tipo di meccanismo per farlo senza intoppi? Inizialmente pensavo di mettere tutti i miei modelli in una singola libreria a cui fare riferimento sia tramite l'API Web che l'app, ma sembra andare contro le buone pratiche di Xamarin.

Stavo pensando a qualcosa come swagger-codegen, che è in grado di generare un SDK basato sui diversi endpoint esposti da un'API, ma da quello che ho visto non sembra adatto a Xamarin.

Qualsiasi intuizione sarebbe molto apprezzata!

    
posta Toto 11.11.2017 - 20:10
fonte

1 risposta

1

Definire un contratto (datamodels, parametri, ecc.) a cui sia l'API che l'applicazione Xamarin possono aderire non è una cattiva pratica, è un must. L'unica posizione in cui questo contratto può risiedere senza l'API che fa riferimento all'app Xamarin o viceversa è nella sua libreria. Nel tuo caso, il tipo di libreria sembra essere una libreria di classi portatile (PCL) che è consumabile da entrambe le parti. Si noti che questo è solo il contratto, i modelli interni (se necessario) possono vivere all'interno dell'App / API. Il contratto e i modelli interni non sono sempre una mappatura uno-a-uno, ecco perché il "se necessario" è tra parentesi.

    
risposta data 13.11.2017 - 08:35
fonte

Leggi altre domande sui tag