Erros e avisos durante o uso de modelos de texto comuns
O Error List Visual Studio janela exibe avisos e erros de modelos de texto. Este tópico descreve os erros e avisos comuns e explica como corrigi-los.
Correções e descrições de erro
A tabela a seguir lista os erros mais comuns e suas correções.
Mensagem de erro |
Descrição |
Solução |
---|---|---|
Falha ao carregar a classe base '{0}' a partir do qual a transformação classe herda. |
Ocorre se você não conseguir encontrar a classe base especificada na inherits parâmetro em uma diretiva de modelo. A mensagem fornece o número de linha de diretriz de modelo. |
Certifique-se de que a classe especificada existe e se o assembly que ela existe no está especificado em uma diretiva de assembly. |
Falha ao resolver incluir texto incluso} |
Ocorre quando você não conseguir encontrar um modelo incluído. A mensagem fornece o nome do arquivo incluir solicitada. |
Certifique-se de que o caminho é relativo ao caminho de modelo original, ou que o arquivo está em um local que está registrado com o host ou que há um caminho completo para o arquivo. |
Erros foram gerados ao inicializar o objeto de transformação. A transformação não será executada. |
Ocorre quando o 'Initialize ()' da transformação classe falhou ou retornado false. |
O código da função Initialize () vem da classe base de transformação especificada em <#@template#> diretiva e de processadores de diretriz. O erro que causou initialize falha provavelmente está na lista de erros. Investigar a razão da falha. Você pode procurar o código gerado real Initialize (), seguindo os procedimentos para depurar um modelo. |
O assembly '{0}' processador de diretriz '{1}' não foi concedida a permissão FullTrust. Somente os assemblies confiáveis são permitidos para fornecer processadores de diretriz. O processador de diretriz não será carregado. |
Ocorre quando o sistema não concede permissões de FullTrust para um assembly que contém um processador de diretriz. A mensagem fornece o nome do assembly e o nome do processador de diretriz. |
Certifique-se de que você use somente assemblies confiáveis na máquina local. |
O caminho '{0}' deve ser local neste computador ou parte de uma zona confiável. |
Ocorre quando uma diretiva ou a diretiva de assembly faz referência a um arquivo que está não na sua máquina local ou na zona de confiável da rede. |
Certifique-se de que o diretório onde estão localizadas a diretiva ou as diretivas do assembly está em sua zona confiável. Você pode adicionar um diretório de rede para a zona confiável através do Internet Explorer. |
Vários erros de sintaxe como, por exemplo, "Inválido token 'catch'" ou "um espaço para nome não contém membros diretamente" |
Há muitas chaves de fechamento em seu código de modelo. O compilador está confuso com o código de geração de padrão. |
Verifique o número de fechamento de chaves e colchetes dentro de delimitadores de código. |
Loops ou condicionais não compilado ou executado corretamente. Por exemplo:
Esse código sempre produz o valor de i. Somente "número é:" é condicional. |
Em C#, sempre use chaves para envolver os blocos de texto são incorporados em instruções de controle. |
Adicione chaves:
|
Correções e descrições de aviso
A tabela a seguir lista os avisos mais comuns juntamente com correções, se disponível.
Mensagem de aviso |
Descrição |
Solução |
---|---|---|
O carregamento do arquivo '{0}' retornou uma cadeia de caracteres nula ou vazia. |
Ocorre se um arquivo de modelo de texto incluído estiver em branco. A mensagem fornece o nome de arquivo do arquivo incluído. |
Remova a diretiva de inclusão ou certifique-se de que o arquivo tem algum conteúdo. |
Compilando transformação: |
Esta seqüência para todos os erros ou avisos originário do compilador, quando ele compila a transformação toma o lugar. Essa seqüência de caracteres significa que o compilador gerou um erro ou aviso. |
Se você tiver um problema ao encontrar a DLL, talvez você precise fornecer o caminho completo ou um nome de alta segurança totalmente qualificado, se a DLL no GAC. |
O parâmetro '{0}' já existe na diretiva. O parâmetro duplicado será ignorado. |
Ocorre quando um parâmetro é especificado mais de uma vez em uma diretiva. A mensagem fornece o nome do parâmetro e o número da linha da diretiva. |
Remova a especificação do parâmetro duplicado. |
Houve um erro ao carregar o arquivo de inclusão '{0}'. A diretiva de inclusão será ignorada. |
Ocorre quando você não conseguir localizar um arquivo especificado em um include diretiva. A mensagem fornece o nome do arquivo e o número da linha da diretiva. |
Certifique-se de que o arquivo de inclusão exista no mesmo diretório do arquivo de modelo de texto original ou em um dos diretórios de inclusão que estão registrados com o host. |
Uma classe base inválida foi especificada para a classe de transformação. A classe base deve derivar de TextTransformation. |
Ocorre quando o inherits parâmetro em uma diretiva de modelo Especifica uma classe que não herda de TextTransformation. A mensagem fornece o número de linha de diretriz de modelo. |
Especificar uma classe que deriva de TextTransformation. |
Uma cultura inválida foi especificada no modelo' ' diretiva. A cultura deve estar no "xx-XX" formato. A cultura invariável será usada. |
Ocorre quando o parâmetro de cultura em uma diretiva de modelo é especificado incorretamente. A mensagem fornece o número de linha de diretriz de modelo. |
Altere o parâmetro de cultura para uma cultura válida em "xx-XX" formato. |
Um valor de depuração inválido '{0}' foi especificado na diretriz de modelo. O valor de depuração deve ser "true" ou "false". O padrão "false" será usado. |
Ocorre quando o debug parâmetro em uma diretiva de modelo é especificado incorretamente. A mensagem fornece o número de linha de diretriz de modelo. |
Defina o parâmetro de depuração como "verdadeiro" ou "false". |
Um valor de HostSpecific inválido '{0}' foi especificado na diretriz de modelo. O valor de HostSpecific deve ser "true" ou "false". O padrão "false" será usado. |
Ocorre quando o parâmetro de host específico em um template diretiva é especificada incorretamente. A mensagem fornece o número de linha de diretriz de modelo. |
Defina o parâmetro de host específicos como "verdadeiro" ou "false". |
Um idioma inválido '{0}' foi especificado em 'template' diretiva. A linguagem deve ser um dos "C#" ou "vb". O valor padrão de "C#" será usado. |
Ocorre quando um idioma sem suporte especificado na template diretiva. Somente "C#" ou "vb" são permitidos (com distinção entre maiúsculas e minúsculas). A mensagem fornece o número de linha de diretriz de modelo. |
Definir o language parâmetro na diretriz de modelo para "C#" ou "vb". |
Várias diretrizes de saída foram encontradas no modelo. Todas, exceto o primeiro serão ignoradas. |
Ocorre quando vários output as diretivas são especificadas em um arquivo de modelo. A mensagem fornece o número da linha da diretiva de saída duplicado. |
Remover a duplicata output diretivas. |
Várias diretrizes de modelo foram encontradas no modelo. Todas, exceto o primeiro serão ignoradas. Vários parâmetros para a diretiva de modelo devem ser especificados dentro de uma diretriz de modelo. |
Ocorre se você especificar várias template diretivas dentro de um arquivo de modelo de texto (incluindo arquivos incluídos). A mensagem fornece o número de linha de diretriz de modelo duplicado. |
Agregam os diferentes template diretivas em um template diretiva. |
Nenhum processador foi especificado para uma diretriz chamada '{0}'. A diretiva será ignorada. |
Ocorre se você especificar um custom diretiva, mas não fornecem um processor atributo. A mensagem fornece o nome da diretiva e o número da linha. |
Fornecer um processor atributo com o nome da directive o processador da diretiva. |
Um processador chamado '{0}' não foi encontrado na diretriz chamada '{1}'. A diretiva será ignorada. |
Ocorre quando o sistema não pode encontrar o directive processador especificado dentro de um custom diretiva. A mensagem fornece o nome de diretiva, o nome do processador e o número da linha da diretiva. |
Definir o processor atributo na diretiva para o nome do processador de diretriz. |
Um parâmetro obrigatório '{0}' para a diretiva '{1}' não foi encontrado. A diretiva será ignorada. |
Ocorre quando o sistema não fornece um parâmetro obrigatório de diretiva. A mensagem fornece o nome do parâmetro ausente, o nome da diretiva e o número da linha. |
Fornece o parâmetro ausente. |
O processador chamado '{0}' não oferece suporte a diretriz chamada '{1}'. A diretiva será ignorada. |
Ocorre quando um processador de diretriz não oferece suporte a uma diretiva. A mensagem fornece o número de linha e o nome da diretiva ofensivo junto com o nome do processador de diretriz. |
Corrija o nome da diretiva. |
A diretiva de inclusão para arquivo '{0}' faz um loop infinito. |
Exibida se as diretivas de inclusão circular são especificados (por exemplo, o arquivo a inclui arquivo B, que inclui o arquivo A). |
Não especifique circular as diretivas de inclusão. |
Executando transformação: |
Esta seqüência para todos os erros ou avisos são gerados ao executar a transformação toma o lugar. |
Não aplicável. |
Uma marca de início ou fim inesperada foi encontrada dentro de um bloco. Certifique-se de que você não digitou incorretamente uma marca de início ou fim e que você não tem blocos aninhados no modelo. |
Exibida quando o inesperado < # ou # >. Ou seja, se você tiver <#> depois de outra marca de abertura não foi fechada ou você possui um # Quando há uma marca de abertura não fechada antes dele. A mensagem fornece o número da linha da marca incompatível. |
Remova a marca de início ou fim incompatível ou usar um caractere de escape. |
Uma diretriz foi especificada no formato errado. A diretiva será ignorada. Especifique a diretriz no formato < # @ nome [parametername = "parametervalue"] * # > |
Exibido pelo analisador, se uma diretiva não for especificada no formato correto. A mensagem fornece o número da linha da diretiva incorreta. |
Certifique-se de que todas as diretivas estão no formato < # @ nome [parametername = "parametervalue"] * # >. Para obter mais informações, consulte T4 Diretivas de modelo de texto. |
Falha ao carregar o Assembly '{0}' registrado processador de diretriz '{1}' {2} |
Ocorre quando um processador de diretriz não pôde ser carregado pelo host. A mensagem identifica o assembly fornecido para o processador de diretriz e o nome do processador de diretriz. |
Certifique-se de que o processador de diretriz está registrado corretamente e que o assembly existe. |
Falha ao localizar o tipo '{0}' no Assembly '{1}' registrado processador de diretriz '{2}' {3} |
Ocorre quando um tipo de processador de diretriz não pôde ser carregado a partir do seu assembly. A mensagem fornece o nome do tipo, do assembly e do processador de diretriz. |
O vshost localiza informações do processador de diretriz (nome do assembly e tipo) no registro. Certifique-se de que o processador de diretriz está registrado corretamente e se o tipo existe no assembly. |
Houve um problema ao carregar o assembly '{0}' |
Ocorre quando há um problema ao carregar um assembly. A mensagem fornece o nome do assembly. |
Você pode especificar os assemblies sejam carregados no < @ # assembly # > diretivas e por processadores de diretriz. A mensagem de erro que segue essa seqüência de caracteres deve fornecer o mais dados sobre por que o carregamento de assembly falhou. |
Houve um problema criando e inicializando o processador de diretriz chamada '{1}'. O tipo do processador é {0}. A diretiva será ignorada. |
Ocorre quando o sistema não foi possível criar ou inicializar um processador de diretriz. A mensagem fornece o número de linha e o nome da diretiva e o tipo do processador. |
Certifique-se de usar o processador de diretriz correto e que o processador de diretriz tem um construtor público padrão. Caso contrário, use as opções de depuração para descobrir por que o método Initialize () do processador de diretriz está falhando. Para obter mais informações, consulte Solucionando problemas de modelos de texto T4. |
Ocorreu uma exceção ao processar uma diretriz chamada '{0}'. |
Ocorre quando um processador de diretriz lança uma exceção ao processar uma diretiva. |
Certifique-se de que os parâmetros para o processador de diretriz estão corretos. |
O host lançou uma exceção ao tentar resolver a referência de assembly '{0}'. |
Ocorre quando o host lança uma exceção ao tentar resolver uma referência de assembly. A mensagem fornece o conjunto da cadeia de caracteres de referência. |
Assembly referências provenientes < @ # assembly # > as diretivas e de processadores de diretriz. Ter certeza de que o nome o parâmetro fornecido no parâmetro assembly está correto. |
Tente especificar o valor sem suporte {1} '{0}' de diretiva {2} |
Ocorre pelo RequiresProvidesDirectiveProcessor (todos nossos processadores de diretriz gerados derivam), quando você fornece um suporte requer ou fornece um argumento. |
Ter certeza de que os nomes a name = 'valor' pares fornecidas a requer e fornece os parâmetros estão corretos. |