WCF - Serviços Ria
O WCF RIA Service é uma estrutura de nível superior e um novo componente de estruturas como .NET 4 e Silverlight 4 que facilita o procedimento de construção de um aplicativo de negócios complexo no Silverlight, oferecendo validação do lado do cliente. RIA significa Rich Internet Applications.
Deve-se destacar aqui que o Silverlight é um framework oferecido pela Microsoft, ideal para aplicações ricas de internet e está disponível para uso como plug-in de navegador, assim como o Adobe Flash.
O serviço WCF RIA é baseado principalmente na versão padrão do serviço WCF. A figura a seguir ilustra uma parte da arquitetura WCF, onde os serviços WCF RIA têm seu foco em geral.

Criar um serviço WCF RIA é a próxima etapa para ter uma melhor compreensão do conceito. O procedimento passo a passo é fornecido abaixo.
Step 1 - Crie um novo projeto da web com o nome SLWCFRiaServices.Web usando Silverlight 5 e, a seguir, adicione um novo item selecionando ADO.NET Entity Data Model ao mesmo.


Step 2 - Agora escolha o conteúdo do modelo no Assistente de modelo de dados de entidade gerando o modelo no banco de dados.

Step 3 - No mesmo assistente, escolha sua conexão de dados e objetos de banco de dados.


Step 4 - Construa a solução para que, no futuro, reconhecer o modelo de dados não seja um problema para o serviço de domínio que você vai criar.

Step 5 - Agora crie um serviço de domínio no projeto da web adicionando um novo item e certifique-se de habilitar o acesso do cliente.


Step 6 - Já na próxima etapa, algumas classes serão geradas e é essencial reconstruí-las.


Step 7 - Nesta etapa, DataDomainContext é exibido pelo Painel de Fontes de Dados.

Step 8 - Nesta etapa, o artigo abaixo do DataDomainContext deve ser selecionado e personalizado.

Step 9- Anexar o Controle DataGrid com a Fonte de Dados é a etapa comprometida aqui, junto com a seleção de temas. Aqui, o tema BureauBlue foi selecionado.


Step 10- A última e última etapa consiste em ir para a tela de design e adicionar entidade na área de layout da MainPage simplesmente arrastando e soltando. Também é vital garantir que AutoGenerateColumns = "True" e executá-lo para visualizar a saída.


Pré-requisitos
Existem alguns pré-requisitos para experimentar todo o potencial dos serviços WCF RIA -
- Visual Studio 2010 / Visual Studio 2012
- Silverlight Developer Runtime
- Versão mais recente do RIA Services Toolkit
- SDK (kit de desenvolvimento de software)
Serviço de domínio WCF RIA
Um serviço de domínio é composto por um conjunto de operações de dados relacionadas ao negócio. Nada mais é do que um serviço WCF que expõe a lógica de negócios de qualquer aplicativo WCF RIA Service.
Um WCF RIA Domain Service tem a classe de hospedagem DomainServiceHost internamente, que por sua vez usa a classe WCF ServiceHost para hospedar o aplicativo. Para tornar o serviço de domínio acessível para o projeto do cliente, ele deve ter o atributo EnableClientAccessAttribute. O atributo é aplicado automaticamente sempre que uma nova classe de serviço de domínio é adicionada.
A figura a seguir mostra a arquitetura de um WCF RIA Domain Service -

Serviços WCF RIA - Consultando dados
A figura a seguir mostra como uma consulta é criada no lado do cliente e executada no lado do servidor para retornar resultados consultáveis. DAL significa Camada de Acesso a Dados.

Serviços WCF RIA - Atualizando Dados
A figura a seguir mostra como os dados são atualizados executando a operação CUD (Create Update Delete) no lado do servidor. Deve-se observar aqui que o serviço WCF RIA é sempre sem estado no lado do servidor.
