namespace EasyInject.Models { public class ShelvedInstance { public readonly object Instance; public readonly string BeanName; public ShelvedInstance(string beanName, object instance) { Instance = instance; BeanName = beanName; } /// /// 重写Equals方法,用于比较两个ShelvedInstance是否相等 /// /// 另一个ShelvedInstance /// 是否相等 public override bool Equals(object obj) { if (obj is ShelvedInstance shelvedInstance) { return Instance == shelvedInstance.Instance && BeanName == shelvedInstance.BeanName; } return false; } public override int GetHashCode() { return Instance.GetHashCode() ^ BeanName.GetHashCode(); } } }