我想知道我在这里缺少什么。调试时,我将 e 视为 SpecificException 的实例,但方法调用与带有基本异常的签名匹配。怎么来的?我可以在不检查我的 LogException 方法中的类型的情况下解决这个问题吗?
public string LogException<T>(T e)
where T : Exception
{
string errorMsg = e.ToString();
errorMsg += Details(e);
return errorMsg;
}
public string Details(Exception exception)
{
return "foo";
}
public string Details(SpecificException exception)
{
return "bar";
}