我有一个ArrayList,它包含一个类的元素Event.Event有两个属性,Name和Timestamp.该列表现在显示所有事件.我想删除具有相同名称但不同时间戳的重复项,并将它们放在另一个列表中.这样,用户可以单击具有该名称的事件,然后选择日期.
我已经在我的应用程序中覆盖了函数equals(比较名称和时间戳)以及其他一些功能.
我怎么解决这个问题?
我有这个服务接口。
public interface IService
{
Task SetAsync(string key, string value, TimeSpan? expiration = null);
Task SetAsync<T>(string applicationName, string key, T value, TimeSpan? expiration = null);
}
Run Code Online (Sandbox Code Playgroud)
我想通过这样做来调用第一种方法。
service.SetAsync("Key", "Value", TimeSpan.FromMinutes(1));
Run Code Online (Sandbox Code Playgroud)
方法调用与第一个方法的契约 100% 匹配。然而编译器通过假设TimeSpan是我的泛型类型来选择第二种方法。
为什么会这样?