我有以下几个类:
public class BaseRepository
{
public virtual void Delete(int id)
{
Console.WriteLine("Delete by id in BaseRepository");
}
}
public class EFRepository: BaseRepository
{
public override void Delete(int id)
{
Console.WriteLine("Delete by Id in EFRepository");
}
public void Delete(object entity)
{
Console.WriteLine("Delete by entity in EFRepository");
}
}
然后我这样使用:
var repository = new EFRepository();
int id = 1;
repository.Delete(id);
那么为什么只有EFRepository.Delete(object entity)
会被调用呢?