Ver necessidade de ir Winform para Webform, o que é seus conselhos?
Pergunta
Nossa aplicação é bem estruturado (bem fizemos o nosso melhor!) E nós dividir o modelo do View, agora, precisamos deixar algumas informações para o nosso cliente com um acesso à web. Nós gostaríamos de construir algo pequeno, com IIS e alguns formulário Web.
Aqui algumas informações que você pode pensar que são úteis:
- O controlador tem rosca de consultas do banco de dados
- A nossa base de dados é PostgreSQL
- Tudo é construir com C # 2.0
- Nós usamos um monte de ligação de dados entre a nossa vista e Controller em Winform.
- Winform vai ficar para fins internos, apenas uma pequena parte estará disponível na Internet.
O que são as suas sugestões para este tipo de movimento?
Atualização
Vamos sediar a web no nosso servidor de empresa para o banco de dados vai ficar dentro do negócio. Não há necessidade de dados duplicados ou qualquer sincronização.
Solução
Eu acho que o "sincronizar" Michael está falando é o de dados no banco de dados e o ponto de vista apresentado pelo aplicativo Winform.
Nós tivemos um problema semelhante, e a solução que veio com é criar um serviço Web que expõe os dados via XML e usar o serviço, tanto do aplicativo web e aplicativo Winform. Toda vez que você atualizar dados enviá-lo para o serviço web, e cada vez que você executar uma consulta obter os dados mais recentes do serviço. Não considere o cache de dados no aplicativo Winform menos que você tenha os dados do perfil, mostrando que é um gargalo, ou você deseja executar desconectado da rede.
Isto é perfeitamente possível em .Net 2, você não precisa de 3.0 ou WCF.
Outras dicas
O maior desafio vai ser a sincronização de seu banco de dados entre o aplicativo WinForms local e a aplicação Webforms hospedado. Depois de fazer isso, criar o aplicativo web é fácil.
Se o seu aplicativo web é somente leitura, então você pode configurar a replicação. Encontrar uma ferramenta que você gosta. Três que eu encontrei através de uma rápida pesquisa são:
Se o seu aplicativo web não é somente leitura, então o problema é mais difícil. Você pode querer considerar a atualização para o .NET 3.0 ou 3.5 para que você possa usar o WCF. Se há uma sobreposição significativa em termos de funcionalidade, você pode querer mover seus dados para a web exclusivamente e expô-la através de serviços WCF.