我有这样的父类泛型方法,如何调用父类的方法不指定类型
public abstract class Parent
{
public string Id { get; set; }
public static T Find<T>(string id) where T : class, new()
{
/* logic here ..*/
}
}
和这个孩子
public class Child : Parent
{
public string Name { get; set; }
}
眼下,Find()
方法可以从子类被称为像这样Child.Find<Child>(myId);
我需要改变所以它不必包括像这样的类型Child.Find(myId);
编辑
我想使这个方法推广,并直接得到它没有确定类为可变。通用类T
应该是它的子类。
好了,你不能。您可以提供Find的非泛型重载,返回一个对象,但就是这样。 – Will
你可以只调用查找() –
我已经添加了扩展方法解决方案 –