【发布时间】:2020-08-24 03:05:24
【问题描述】:
我如何让一个父母和一个孩子继承孩子的 IEquatable 函数?这是我的代码
public class Category : IEquatable<Category>
{
public string _Name { get; set; }
public string _Id { get; set;}
private string _HomeCategory { get; set; }
public string _prestaId { get; set; }
public bool _inUse { get; set; }
public Category(string Name, string Id, string HomeCategory, bool inUse)
{
_Name = Name;
_Id = Id;
_HomeCategory = HomeCategory;
_inUse = inUse;
}
public virtual bool Equals(Category other)
{
if (other == null)
return false;
if(this._Id == other._Id)
{
return true;
}
else { return false; }
}
public override int GetHashCode()
{
return this._Id.GetHashCode();
}
}
public class SubCategory : Category :
{
public string parentCategory { get; set; }
public SubCategory(string Name, string Id, string HomeCategory, bool inUse) : base(Name, Id, HomeCategory, inUse)
{
}
}
所以我必须反对,子类别从类别派生,但包含的方法不适用于子类别,但它与类别有关我做错了什么我将如何派生类别的方法,以便包含在子类别为的列表中它的类型会起作用吗?
【问题讨论】:
-
“不适用于子类别”是什么意思?接口和实现都是继承的,所以不清楚是什么问题。
-
父母永远不会继承孩子所做的任何事情。
标签: c# list contains iequatable