Estou implementando um serviço web RESTful e vários aplicativos clientes que estão principalmente no Silverlight. Estou encontrando uma série de opções para desenvolver o lado do servidor e o cliente da API, mas não tenho certeza de qual é a melhor abordagem. Estou preocupado com a estabilidade e com uma plataforma que continuará existindo daqui a alguns meses.
Começamos a usar o REST Starter Kit com .NET 3.5, mas passamos para a nova API da Web WCF ao atualizar para o .NET 4.0. Toda a documentação indica que a API da Web do WCF é a substituição do RSK. No entanto, a API da Web está apenas na Visualização 4 e não inclui suporte para clientes Silverlight ou Windows Phone 7 (ainda).
A API da Web do WCF se parece com um invólucro sobre o material dos Serviços WebHttp do WCF fornecido na System.ServiceModel.Web
biblioteca, o que me faz pensar que talvez seja mais simples usar apenas o material interno, mas a API da Web oferece alguns recursos interessantes.
Estou especificamente empenhado em tentar determinar o melhor caminho para o lado do cliente. Meu principal requisito é que eu precise dar suporte à desserialização dos objetos do lado do cliente de maneira rápida e fácil. A API da Web oferece uma boa biblioteca de clientes, mas não possui uma versão do Silverlight.
Eu gostaria de usar a abordagem mais recente e o conjunto de ferramentas que está sendo desenvolvido e suportado ativamente.
O REST Starter Kit é realmente obsoleto?
Alguém já teve sucesso ao implementar o kit de ferramentas da API da Web do WCF?
Existe mérito em usar um desses recursos nos recursos internos dos Serviços WebHttp do WCF encontrados
System.ServiceModel.Web
?Existe uma solução única que funcione para qualquer cliente (web, Silverlight etc.)?
Quais sugestões você tem?
Respostas:
Apenas para acompanhar e encerrar a postagem, com a Visualização 5, a API da Web do WCF deu um grande salto, tornando incrivelmente simples a criação de APIs REST. E embora a base de código atual no Codeplex não inclua um cliente Silverlight, existe um kit de ferramentas por aí e eu pude facilmente remover as partes do Async-CTP do código-fonte aberto e criar uma versão SL.
Eu recomendo fortemente que qualquer pessoa interessada em entrar no REST com WCF examine a estrutura: http://wcf.codeplex.com .
FYI - Será uma parte integrada do .NET 4.5 e atualmente está sendo reescrita para ser executada na mesma estrutura principal do ASP.NET MVC (embora me digam que ele definitivamente suportará ainda a auto-hospedagem).
fonte
Eu não usei o REST Starter Kit, mas como estou escrevendo uma API REST .net 4.0 WCF, tenho certeza de que ela ainda existe :)
Eu recomendo que você dê uma olhada no odata. É incrivelmente rápido e simples de codificar e funciona muito bem com o silverlight.
fonte
A API da Web do WCF não fornece nenhuma informação de metadados que você usaria para gerar um proxy de serviço e, portanto, poder adicionar uma referência de serviço. Ele se destina à fácil produção de serviços REST sob o guarda-chuva do WCF, assim como você faz com a estrutura da API da Web do ASP.NET MVC 4.
Portanto, não há suporte para WP7 ou Silverlight, mas é quase perfeito para o resto da web.
No entanto, o WCF Data Services parece um candidato certo; permite criar serviços RESTful e consumi-los facilmente com o Silverlight.
fonte