Hay una clase base que tiene un método de tipo genérico y estoy seguro de que en mi derivada devolveré una cadena. Este es mi código:La declaración de parámetro de tipo debe ser un identificador, no un tipo
public abstract class Base
{
public virtual T GetSomething<T>()
{
return default(T);
}
}
public class Extended : Base
{
public override string GetSomething<string>()
{
return string.Empty;
//return base.GetSomething<T>();
}
}
Pero este código no se compila. ¿Alguien puede detectar el error? Estoy seguro de que en mi clase Extendida solo quiero devolver la cadena. ¿Cómo puedo solucionar esto?
o cambie la base declaración de clase a 'clase abstracta pública Base ' –
Eranga
Quizás, y luego' Extendido: Base '. Eso es ciertamente posible. No está claro de inmediato qué intenta lograr el PO, así que elegí el enfoque que requiere un cambio mínimo en el diseño de la clase. –
cdhowie