我有这个基类:
public class BaseEvent
{
public int EventID { get; set; }
public int GetEventID()
{
return EventID;
}
}
然后我有另一个继承自那个基类的类:
public class ValidationResult<T> where T : BaseEvent
{
private void AddEventStatusUpdater(ValidationResult<T> validationResult)
{
validationResult.GetEventID();
}
}
我遇到的问题是我无法从基类访问GetEventID()方法。
我认为这可能是因为我使用了T泛型。有没有其他方法可以访问此方法?
答案 0 :(得分:1)
public class ValidationResult<T> where T : BaseEvent
说T
必须是BaseEvent
,而不是ValidationResult<T>
继承自BaseEvent
。那是:
public class ValidationResult<T> : BaseEvent
并且T
没有任何约束
这就是你想要的吗?
答案 1 :(得分:0)
您已经开始实现通用接口,而不是从基类继承。我想你打算做以下事情:
public class ValidationResult : BaseEvent
{
private void AddEventStatusUpdater()
{
var id = this.GetEventID();
}
}