Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
«construct1_name» é um «construct1», que não é válido no contexto dado.
O compilador detetou uma construção inesperada como a seguinte:
Um construtor de classe não é uma expressão de teste válida em uma instrução condicional.
Um nome de classe foi usado em vez de um nome de instância para se referir a um elemento de matriz.
Um identificador de método é usado como se fosse uma struct ou classe
Exemplos
Exemplo 1
O exemplo a seguir gera CS0119: 'C.B()' é um método, que não é válido no contexto dado. Você pode corrigir esse erro alterando o nome do método C.Bou usando o nome totalmente qualificado para a classe B como N2.B.
namespace N2
{
public static class B
{
public static void X() {}
}
}
namespace N1
{
public class C
{
void B() {}
void M() => B.X(); // CS0119
}
}
Exemplo 2
O exemplo a seguir mostra um cenário comum em que CS0119 ocorre ao tentar adicionar nomes de classe a uma coleção de tipos. O compilador espera instâncias, não nomes de classe Type.
using System;
using System.Collections.Generic;
public class Page_BaseClass { }
public class Page_CRTable { }
public class Page_DBGridWithTools { }
public static class PageTypeManager
{
public static List<Type> GetPageTypes()
{
List<Type> pageTypesList = new List<Type>();
// CS0119: 'Page_BaseClass' is a type, which is not valid in the given context
pageTypesList.Add(Page_BaseClass);
pageTypesList.Add(Page_CRTable);
pageTypesList.Add(Page_DBGridWithTools);
return pageTypesList;
}
}
Para corrigir esse erro, use o Type.GetType método ou o typeof operador para obter Type instâncias:
using System;
using System.Collections.Generic;
public static class PageTypeManager
{
public static List<Type> GetPageTypes()
{
List<Type> pageTypesList = new List<Type>();
// Use typeof operator to get Type instances
pageTypesList.Add(typeof(Page_BaseClass));
pageTypesList.Add(typeof(Page_CRTable));
pageTypesList.Add(typeof(Page_DBGridWithTools));
return pageTypesList;
}
// Alternative: Load types dynamically by name
public static List<Type> GetPageTypesByName(string[] typeNames)
{
List<Type> pageTypesList = new List<Type>();
foreach (string typeName in typeNames)
{
Type type = Type.GetType(typeName);
if (type != null)
{
pageTypesList.Add(type);
}
}
return pageTypesList;
}
}