Originariamente ho posto questa domanda su Stackoverflow ma mi è stato suggerito di spostare la domanda qui.
Ho fatto questa domanda qualche tempo fa nei forum MSDN ma mi piacerebbe una seconda opinione di StackOverflow da quando ho provato questa strada e ho trovato alcuni CONS, ma mi piacerebbe sentire anche altre opinioni.
Scenario:
Ho un programma di servizio Windows, estraendo dati da file e inserendo i dati estratti in un database MS SQL. C'è un programma GUI che esegue alcuni filtri e calcoli e visualizza i dati SQL in tempo reale. Quindi la GUI mostra fondamentalmente record selettivi dal database in qualsiasi momento. Dovrebbe anche essere possibile per la GUI inserire e aggiornare i record in base alle regole. Anche i dati recuperati dal Database possono essere enormi e sarebbe anche bello consentire l'accesso remoto ai dati dalla GUI (non critico)
Quindi la mia domanda in maggiori dettagli:
1 - dovrei creare un servizio WCF nel mio programma di servizio che fornisce alcune API alla GUI per accedere e aggiornare i record?
Pro:
- Posso modificare il database di back-end e non è necessario aggiornare la GUI app.
- La GUI sarebbe sql gratuita.
- consente alla GUI di accedere direttamente al database e recuperare e aggiornare stesso.
2 - consente alla GUI di accedere direttamente al database e recuperare e aggiornare se stesso. PRO:
-
sicurezza già presente più veloce dell'opzione 1 più semplice da implementare
-
modificato nei record può attivare la modifica dei dati anziché il polling nuovi dati per la visualizzazione in tempo reale.
- La GUI può accedere ai dati remotly se l'accesso al database SQL è configurato per essere accessibile remotamente (un possibile rischio per la sicurezza?)
questa è la domanda originale: link