Ler em inglês

Compartilhar via


Erro do Compilador CS0314

O tipo 'type1' não pode ser usado como parâmetro de tipo 'name' no tipo genérico ou método 'name'. Não há conversão boxing ou conversão de parâmetro de tipo de 'type1' para 'type2'.

Quando um tipo genérico usa um parâmetro de tipo restrito, a nova classe também deve atender a essas mesmas restrições.

Para corrigir este erro

  1. No exemplo a seguir, adicione where T : ClassConstraint à classe B.

Exemplo

O código a seguir gera o erro CS0314:

// cs0314.cs  
// Compile with: /target:library  
public class ClassConstraint { }  
  
public class A<T> where T : ClassConstraint  
{ }  
  
public class B<T> : A<T> //CS0314  
{ }  
  
// Try using this instead.  
public class C<T> : A<T> where T : ClassConstraint  
{ }  

Confira também