Mensagens de erro quando tenta executar uma aplicação Web ASP.NET 2.0 criada no .NET Framework 2.0

Traduções de Artigos Traduções de Artigos
Artigo: 919284 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Quando tenta executar uma aplicação Web do Microsoft ASP.NET 2.0 criada no Microsoft .NET Framework 2.0, poderá receber uma mensagem de erro semelhante uma das seguintes mensagens de erro:
A classe base inclui o campo MyControl _1', mas o respectivo tipo (MyControl) não é compatível com o tipo de controlo (ASP. MyControl _ascx).
Não é possível converter o objecto do tipo 'ASP. MyControl _ascx' escrever ' MyNameSpace.MyControl '.
Não são permitidas referências de ficheiro circular.
Nota Estas mensagens de erro, MyControl é o nome do controlo que provocou o erro. MyNameSpace é o nome do espaço de nomes que este controlo é um membro de

Causa

Este é problema ocorre devido o forma como o ASP.NET 2.0 utiliza as referências de aplicação bem como a estrutura da pasta da aplicação para compilar a aplicação. Se a propriedade de batch do <compilation> elemento no ficheiro web.config da aplicação está definido como true , ASP.NET 2.0 compila cada pasta da aplicação para uma assemblagem diferente. Neste cenário, poderá ocorrer uma referência circular. Além disso, o processo de compilação poderá falhar se qualquer uma das seguintes condições for verdadeira:
  • A aplicação contém referências a controlos Web.
  • A aplicação contém referências a páginas Web que está fora do directório actual.

Resolução

Para resolver este problema, utilize um dos seguintes métodos:

Método 1: Modificar o ficheiro web.config

Para modificar o ficheiro web.config , defina a propriedade batch do <compilation> elemento no ficheiro web.config da aplicação como false .

Nota Este método é recomendado apenas para pequenas aplicações. Nas aplicações de produção de grandes dimensões, quando define a propriedade de batch para false , ASP.NET 2.0 compila cada página da aplicação para uma assemblagem diferente. As assemblagens de página individual, em seguida, são carregadas na seguinte localização de memória disponível. Além disso, não não possível mover as assemblagens de página individual. Isto provoca a fragmentação de memória.

Método 2: As pastas na aplicação de encomenda

Para evitar uma referência circular, reordenar as pastas na aplicação. Para reordenar estas pastas, siga estes passos:
  1. As referências ao ficheiro e do ficheiro que é indicado pela mensagem de erro de rastreio.
  2. Identifica a referência circular.
  3. Para evitar a referência circular, coloque os ficheiros referenciados em conjunto na mesma pasta.

Mais Informação

Para mais informações sobre como utilizar o <compilation> elemento no ficheiro web.config , visite o seguinte Web site da Microsoft Developer Network (MSDN): http://msdn2.microsoft.com/en-us/library/s10awwz0.aspx

Para obter mais informações sobre outro erro que pode causar um InvalidCastException ser iniciadas numa aplicação Web ASP.NET ligados, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
915782CORRECÇÃO: Poderá receber um erro de InvalidCastException numa aplicação Web ASP.NET ligados

Propriedades

Artigo: 919284 - Última revisão: 25 de julho de 2006 - Revisão: 1.2
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 2.0
Palavras-chave: 
kbmt kbasp kbtshoot kbprb KB919284 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 919284
Exclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com