Em um piscar de olhos, já se passaram 4 anos desde que a Microsoft lançou a plataforma .net, e o .net também passou por atualizações de 1.0 para 1.1 e 2.0. Devido à atração de vários recursos superiores do asp.net 2.0 e IDE vs 2005, todos estão ocupados aprendendo 2.0 e atualizando o projeto para vs 2005 para desenvolvimento. Mas, na verdade, muitos projetos não podem ser atualizados para novas versões por vários motivos. Com o passar do tempo, o problema de manutenção de projetos de versões antigas torna-se cada vez mais problemático. Embora o .net tenha nascido há pouco tempo, 4 anos é tempo suficiente para acumular um grande número de projetos.
Eu tenho um projeto desenvolvido com vs.net 2002, que não foi atualizado por vários motivos (principalmente porque o projeto estava funcionando bem por um tempo antes do lançamento do vs.net 2003 e outros programas asp.net no servidor Não é possível para se adaptar aos requisitos de segurança do .net 1.1).
Quando a plataforma de desenvolvimento da empresa foi atualizada, o vs.net 2002 e o vs.net 2003 foram instalados no computador ao mesmo tempo, o que resolveu temporariamente a manutenção das diferentes versões do projeto. Posteriormente, o projeto passou pelo período de manutenção e há muito tempo não era atualizado. Meu computador também foi reinstalado e o vs.net 2002 foi totalmente eliminado. Mas em 2005, os clientes pediam modificações a cada um ou dois meses e tinham que ser rápidos. Não havia outra maneira. Os clientes eram tão incríveis que precisavam fazer alterações mesmo após o período de manutenção. Mas aí vem o problema. Sem vs 2002, não pode ser compilado.
É muito problemático instalar o .net framework 1.0 no computador e chamar manualmente o csc para compilar o código modificado. O projeto tem muitas referências e escrever a linha de comando é muito complicado. Isto é especialmente doloroso quando o projeto tem muitas pastas. Também fiz o teste e escrevi um programa para compilá-lo, mas tive preguiça e nunca percebi.
Hoje preciso modificar o programa novamente e de repente me lembrei que usei o atributo Src da diretiva @Page uma vez muito cedo (em 2002, o asp.net usará seu próprio modelo de compilação em vez de usar o CodeBehind). do IDE vs.net Desta forma, o código pode ser publicado sem compilá-lo em uma dll. Ao acessar o site, o asp, net irá compilar automaticamente o arquivo aspx e o arquivo .aspx.vb. Existem duas desvantagens principais deste método: 1. O arquivo de código (.vb) deve ser publicado no servidor, 2. vs.net IDE não oferece suporte para isso. Por causa do segundo problema, desisti de usá-lo e esqueci. Agora estou preocupado em não conseguir compilar o programa. Enquanto o código modificado puder entrar em vigor, outras deficiências não serão consideradas. De qualquer forma, todo o código-fonte é publicado no servidor. Adicionei um atributo Src à diretiva @Page, usando o mesmo valor do atributo CodeBehind, apontando para o arquivo de código. Em seguida, modifique o código no arquivo .vb. Atualize, as modificações entrarão em vigor e a manutenção será concluída. Tão legal. É o que farei a partir de agora. Como o IDE vs.net não oferece suporte e é mencionado no MSDN, poucas pessoas sabem que o .net possui esse modelo de compilação. Compartilhe agora. Se alguém estiver passando pela mesma dor que eu, você também pode tentar adicionar Src à página, é simples e rápido. para encontrar ferramentas para compilá-lo.
Resumo: Muitas pessoas, inclusive eu, preferem compilar o programa em uma dll, que parece mais um software lançado. Na verdade, o método de "publicar todo o código-fonte no servidor e compilar o código completamente durante o tempo de execução" é muito bom e simplifica muito o trabalho de manutenção futuro. Muitas empresas realizam projetos para clientes que na verdade não precisam ocultar o código-fonte dos clientes. Nesse caso, usar este método trará enormes benefícios para trabalhos de manutenção futuros. Não importa se o .net foi atualizado n vezes ou se a versão correspondente das ferramentas de desenvolvimento está instalada em seu computador, você não precisa se preocupar. lidar com tudo.
Nota: Todas as versões do asp.net suportam este modo de compilação, mas o IDE do vs.net 2002 e 2003 não oferece suporte e não pode abrir a visualização de design. O IDE recém-lançado vs 2005 suporta este modo de compilação. Ao usar o atributo Src, o atributo CodeBehind não é mais necessário, mas é recomendado que você ainda o mantenha. Ele também pode ajudá-lo se você precisar retornar repentinamente à visualização de cálculo. O atributo Inherits não é obrigatório, mas é altamente recomendável não excluí-lo, pois se você vincular diretamente o evento na declaração de controle do arquivo aspx (como: OnClick="...."), haverá um erro sem o atributo Herda.
Fonte: BLOG cwbboy