Quali sono alcune domande che posso chiedermi sul nostro design per identificare se dovremmo utilizzare DTO o entità di auto-monitoraggio nella nostra applicazione?
Ecco alcune cose che so di prendere in considerazione:
- Abbiamo un'applicazione di livello n standard con un client WPF / MVVM, un server WCF e un database MS SQL.
- Gli utenti possono definire la propria interfaccia, quindi i dati necessari al servizio WCF cambiano in base all'interfaccia che l'utente ha definito autonomamente
- I modelli vengono utilizzati sia sul lato client che sul lato server per la convalida. Non saremmo vincolanti direttamente con DTO o STE
- Alcuni modelli contengono proprietà che vengono caricate in modo pigro dal servizio WCF, se necessario
- Esistono controlli delle autorizzazioni sul lato server che influiscono sul modo in cui i dati vengono restituiti. Ad esempio, alcuni dati sono parzialmente o completamente mascherati in base al ruolo dell'utente
- Le nostre risorse sono limitate (tempo, manodopera, ecc.)
Quindi, come posso determinare cosa è giusto per noi? Non ho mai usato EF prima di allora, quindi non so davvero se STE è giusto per noi o meno.
Ho visto persone suggerire di iniziare con STE e implementare solo DTO se diventano un problema, ma al momento disponiamo di DTO e stiamo cercando di decidere se l'utilizzo di STE renderebbe la vita più facile. Siamo abbastanza precoci nel processo che il passaggio non sarebbe un grosso problema, ma non voglio passare a STE solo per scoprire che non funziona per noi.