none
Dúvida sobre WCF/Templates do Visual Studio RRS feed

  • Pergunta

  • Amigos, bom dia!

    Estou com algumas dúvidas sobre arquitetura/templates/metodologias/!?!?! Em projetos Silverlight.

    Imaginem um cenário onde tenho que trafegar o mínimo de informações possíveis entre o Cliente e o Servidor, ou seja, num cadastro de cliente que possui relacionamentos com diversas tabelas (empresa, endereço, remo de atividade,  usuário, etc.), na Grid onde o usuário (lado Cliente) irá fazer uma consulta deve apenas trafegar dados básicos, como o nome e o CNPJ desse cliente por exemplo. Qual a melhor forma de fazer esse serviço (continuem lendo).

    Eu fiz dois “tipos” de testes:

    1)      Utilizando o template “Silverlight-enabled WCF Service” (pelo que eu entendi não é WCF Ria services),  o qual eu só consigo consumir  os serviços através de Web Reference no lado Cliente (projeto silverlight). Neste modelo sempre que uma alteração é feita nos serviços (Projeto Web) é necessário atualizar as referências do WebService (Projeto Silverlight) (O tempo para atualizar aumenta muito com o aumento dos serviços). Para trafegar somente as informações que eu necessitava utilizei classes de transporte (DTO) – Não sei se é a forma mais correta.

    2)      Utilizando Domain Service Class (pelo que entendi esse usa/é/suporta/!?!? Ria Service), neste caso eu consigo consumir os serviços sem referenciar um Web Reference, pois o mesmo gera os “serviços” no meu projeto Cliente (projeto Silverlight), neste modelo não cheguei a testar as classes DTOs, e também não sei se vou conseguir usar Data Sources dessas classes (Vale a pena usar Data Sources? Aumenta muito o desenvolvimento de telas, binding, etc).

    - Qual a diferenças entre os dois templates?

    - Existe alguma forma de trafegar informações entre o Cliente e o Servidor, onde eu possa especificar quais campos da minha tabela eu quero, sem a necessidade de criar uma classe de transporte?

    quarta-feira, 6 de abril de 2011 14:10

Respostas

  • Boas Marcos,

    Acredito que você conseguiu diferenciar os dois. Como você reparou, o WCF RIA Service abstrai do desenvolvedor Silverlight toda a necessidade dele conhecer e configurar serviços WCF, pois a IDE faz todo o trabalho complexo para deixar a aplicação Silverlight interligada com o servidor de origem, para enviar e/ou receber as informações.

    Eu particularmente prefiro ter o controle, então acredito que desenhar os serviços para atender a uma necessidade, pensar na reutilização daquilo por outros aplicativos, etc. Agora, se tudo o que sua aplicação faz são CRUDs (data centric), então acho que ele poderá ajudar, pois ele removerá todo o overhead de criar serviços para inserir, atualizar, excluir e selecionar.
    http://www.israelaece.com
    quinta-feira, 7 de abril de 2011 11:11
    Moderador