Pergunta

Eu estou trabalhando em um aplicativo do Silverlight que usa WCF. Eu preciso ter meu projeto WCF separado do aplicativo ASP.Net que irá hospedar o meu projeto Silverlight. Eu estou procurando algumas orientações sobre como devo organizar minha solução e lista de pegadinhas outras pessoas sofreram durante a depuração e implantação.

Especificamente, minhas perguntas são

  1. Que tipo de projeto que eu deveria usar para o serviço WCF? (Projeto A WCF, um projeto ASP.NET com serviços WCF auto-hospedados, outra coisa)

  2. O que eu preciso de modo a obter-lo para que quando eu pressionar F5 eu posso depurar tanto meu projeto do Silverlight e meu serviço WCF? Vou precisar de uma política de domínio cruzado apenas para depurar a coisa?

Algumas informações básicas sobre por que eu quero fazer isso:

Eu tenho aplicação web legado que estou gradualmente convertendo ao longo de um aplicativo Silverlight. Porque é uma grande aplicação web alguns de seus recursos serão convertidos em Silverlight antes de outros.

A aplicação web legado tem um monte de código em que ela não é mais usado. Grande parte do código que está referências deixaram de ser usadas 3º montagens de peças. É por isso que eu quero para se livrar da aplicação web de idade. Então, obviamente, eu não quero para serviços WCF host que serão mantidos para futuras versões na mesma. Essa é a minha razão para querer fazer o projeto WCF separar.

Foi útil?

Solução

Estamos fazendo exatamente a mesma coisa.

  1. Estamos usando um projeto WCF apenas no caso temos que mudar a forma como ele está hospedado no futuro. (Ou seja, não está mais usando IIS)

2.a. Você pode ter uma solução com seus projetos Silverlight e seu projeto WCF. O projeto do Silverlight terá uma referência de serviço para o serviço WCF em sua solução. Isso permite que você depuração usando F5. No entanto, quando você vai para implantar, você terá que mudar seus URIs serviço app.config para se referir ao seu local de produção.

2.b. Você só vai precisar de um arquivo de política entre domínios se os seus nomes de domínio totalmente qualificados são diferentes para o serviço WCF e o aplicativo Silverlight. Ours acontecer de ser diferente. Aqui está um excelente artigo sobre quando usar o arquivo de política: Clicky

Boa sorte!

Outras dicas

Basta lembrar que quando você começa pronto para implantar, se o seu serviço vai ser hospedado em uma máquina diferente do seu aplicativo, você precisa implantar o serviço em primeiro lugar. Em seguida, re-configurar o seu serviço de referência, e, finalmente, re-compilar seu Silverlight antes de implantar. Caso contrário, seu aplicativo Silverlight irá procurar o serviço em sua máquina local em vez de onde você implantá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top