locked
Architettura RIA Services RRS feed

  • Domanda

  • Buongiorno

    Sono in fase di sperimentazione SL 4.0 e RIA Services.
    Uno dei (tanti) dubbi è se convenga comprendere tutte le tabelle del DB in un unico DomainService o fare un DomainService per ogni tabella (o come Aristotele insegnava un giusto mezzo).

    Al di la di questa prima soluzione, una cosa che mi preoccupa, perchè mi sembra molto vincolante, è il fatto di non poter creare due diversi Domain Service per la stessa tabella.

    Gradirei le vostre considerazioni.

    Grazie
    giovedì 11 febbraio 2010 08:44

Risposte

Tutte le risposte

  • Personalmente preferisco organizzare i domain service in unità di funzionalità, avere diversi domainservice significa avere diversi domaincontext con relativo overhead,  i tipi serializzati non sembrano legati ad un datacontext quindi presumo che sia possibile esporli da dataservices diversi anche se, personalmente, non ho mai provato.


    Corrado Cavalli [Microsoft .NET MVP-MCP]
    UGIdotNET - http://www.ugidotnet.org
    Weblog: http://blogs.ugidotnet.org/corrado/
    Twitter: http://twitter.com/corcav
    giovedì 11 febbraio 2010 15:53
    Postatore
  • Grazie a tutti per l'intervento.
    Se tra due tabelle esiste una relazione (es: 1 a N) le due tabelle "devono" stare un un'unico DS oppure "possono" essere separate ?
    venerdì 12 febbraio 2010 06:42
  • Non ho mai provato ma credo possano stare dove ti pare, continua comunque a sfuggirmi il senso della richiesta.


    Corrado Cavalli [Microsoft .NET MVP-MCP]
    UGIdotNET - http://www.ugidotnet.org
    Weblog: http://blogs.ugidotnet.org/corrado/
    Twitter: http://twitter.com/corcav
    venerdì 12 febbraio 2010 06:59
    Postatore
  • Ho messo alcune tabelle in un DS. In seguito volevo usare una delle tabelle percedenti in un altro DS ma ciò non è possibile. Ad esempio la tabella Clienti da usare sia con Ordini che con la Fatture: mi sarebbe piaciuto gestire un DS che raggruppasse logicamente le funzionalità relative alla gestione dei Clienti, un DS per gli Ordini, uno per Fatture.

    Inoltre non è possibile modificare un DS senza perdere le personalizzazioni all'implementazione di default.

    E ancora volendo visualizzare la ragione sociale del cliente nella datagrid degli ordini ho usato <Include()> <Association("Relazione";"Id1";Id2")> ma ciò è possibile solo se i dati provengono dallo stesso DS.

    Mi sembrano dei vincoli estremamente restrittivi, che fanno un po' perdere i vantaggi legati alla "sempliocità" dei Ria Services.

    Devo pensare di utilizzare delle WCF RIA Services Class Libraries che mi sembra possano aggirale l'ostacolo?

    O esistono delle soluzioni diverse per affrontare questi problemi, risassunte in esempi concreti ?

    Grazie
    venerdì 12 febbraio 2010 07:45
  • Non credo che WCF RIA Services class lib risolvano il tuo problema...
    Corrado Cavalli [Microsoft .NET MVP-MCP]
    UGIdotNET - http://www.ugidotnet.org
    Weblog: http://blogs.ugidotnet.org/corrado/
    Twitter: http://twitter.com/corcav
    venerdì 12 febbraio 2010 10:34
    Postatore
  • Ma esattamente qual'è il reale vantaggio di avere diversi DS per diverse entità?
    Personalmente ragiono come Corrado. Un DS raggruppa tutte le entità che servono al suo scopo.

    HTH
    Andrea Boschin
    Most Valuable Professional - Silverlight
    web: http://www.silverlightplayground.org
    blog: http://blog.boschin.it
    twitter: http://twitter.com/aboschin
    venerdì 12 febbraio 2010 16:37