Erro do Compilador CS0452
O tipo "type name" deve ser um tipo de referência para usá-lo como parâmetro "parameter name" no tipo genérico ou no método "identifier of generic"
Esse erro ocorre quando você passa um tipo de valor como struct
ou int
como parâmetro para um tipo genérico ou método que tem uma restrição de tipo de referência.
O código a seguir gera o erro CS0452.
C#
// CS0452.cs
using System;
public class BaseClass<S> where S : class { }
public class Derived1 : BaseClass<int> { } // CS0452
public class Derived2<S> : BaseClass<S> where S : struct { } // CS0452
Colaborar conosco no GitHub
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: