Conversão de '<type1>' em '<type2>' não pode ocorrer em uma expressão constante usada como um argumento para um atributo
Uma expressão usada para um argumento de atributo é avaliada como um tipo de dados diferente do parâmetro de atributo correspondente, e o Visual Basic não permite a conversão de tipo necessária para argumentos de atributo.
Um atributo fornece metadados para o elemento ao qual ele é aplicado e o compilador deve ser capaz de construir todos os metadados em tempo de compilação. Por esse motivo, cada atributo deve usar valores constantes em tempo de compilação e, portanto, cada argumento de atributo deve ser avaliado como um valor constante de tempo de compilação.
Determinadas conversões de tipo não podem produzir valores constantes em tempo de compilação. Por exemplo, converter um String
em um Double
ou um Date
depende da configuração de localidade em tempo de execução. Outras conversões, como uma matriz de um tipo derivado em uma matriz de Object
, apresentam uma variedade de problemas que não permitem que o compilador as permita em argumentos de atributo.
ID do erro: BC30934
- Use uma expressão que seja avaliada para o mesmo tipo de dados que o parâmetro correspondente, conforme definido pelo atributo.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: