我有两个功能,在两个不同的班级上 做基本上相同的事情... 每个班级都有不同的属性
例如:
public class ClassA
{
public int ColorID {get;set;}
public string ColorDescription {get;set;}
}
public class ClassB
{
public int TypeID {get;set;}
public string TypeDescription {get;set;}
}
public void ExFunctionSaveA(ClassA aClass)
{
aClass.ColorID=1;
aClass.ColorDescription="My Color";
Save();
}
public void ExFunctionSaveB(ClassB bClass)
{
bClass.TypeID=2;
bClass.TypeDescription="My Type";
Save();
}
正如你可以看到的, 班级和函数有相同的类型结构, 只有财产名称是不同的... 但我觉得我重复了代码 这样做
是否有一种方法可以将ExFunctionA和ExFunctionB 合并成一个函数, 这样我就可以使用这个功能 用于所有结构相似的班级
我知道我可以做一些一般的事情 比如
public void ExFunctionSave<T>() // T is either ClassA or ClassB
{
.
.
.
.
Save();
}
但是,我如何处理每个