Pergunta

Eu tenho um projeto Silverlight onde a funcionalidade é segregado em várias bibliotecas Silverlight devido ao tamanho e complexidade da aplicação. Estou tendo problemas descobrir qual é a melhor maneira de separar o serviço de domínio RIA que é gerada a partir do projeto do site. Eu preciso ser capaz de acessar dados de outras bibliotecas como eles vão ser carregado dinamicamente no principal aplicativo Silverlight, conforme necessário.

Foi útil?

Solução

Eu acabei de tomar o código que é gerado pelo Visual Studio no diretório Generated_Code do principal aplicativo Silverlight e criando várias bibliotecas Silverlight para separar a Ria DomainContext, o serviço de autenticação, entidades e outros serviços de domínio que tinha escrito. Eu, então, extraído interfaces para o DomainContext, etc e colocá-los em sua própria biblioteca. Usando Unity Framework da Microsoft para o Silverlight Eu era então capaz de dissociar todos os meus módulos do projeto principal. Todos os meus módulos agora usar as interfaces. Há um contêiner IoC no principal aplicativo onde eu registar todas as classes que implementam as interfaces e elas são injetadas nas páginas à medida que são instanciado. Não que compliated depois de tudo. A única coisa a lembrar é deixar o atributo EnableClientAccess nas classes de serviços de domínio no servidor, mas remover o link projeto de servidor ASP.Net da principal aplicação Silverlight. Eu li que eles estão planejando para tornar isso mais fácil na versão final dos serviços Ria / Silverlight 3 já que outras pessoas se queixaram sobre o acoplamento forte criada pela configuração atual.

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