比较两个自定义对象以防止重复

kay*_*yze -1 .net c#

嗨,我有这个Bookings对象

Booking abc = new Booking { date = DateTime.Today, timeslot= timeslot[1], venue = venue};
waiter xyz = new waiter { id = 1, name = "xyz" };
xyz.bookedList = new List<Booking>();
xyz.bookedList.Add(bookingxyz);
Run Code Online (Sandbox Code Playgroud)

我正在循环上面的代码.我想避免基于日期和时间段的重复预订我该怎么做?

小智 5

你试图避免在列表中重复吗?如果是,则不应使用列表,因为它允许重复.

更sutable候选人会的Hashset,你将有一个覆盖添加到GetHashCode()预定基础上计算一个散列日期时隙作为解释这里

然后,在将预订添加到HashSet之前,只需使用Contains方法验证该对象是否已存在