0

我还不太擅长这个 C# 的东西......

我正在尝试创建一个简单对象列表,以便稍后序列化为 JSON。问题是,有时,我需要对象是一种类型,有时是另一种类型。两个对象的差异很小。

这是两个相似的类(你会明白的):

class DataCell 
{
  string cellName {get; set;}
  string cellValue {get; set;}
}

class LinkCell
{
  string cellName {get; set;}
  linkObject cellValue = new linkObject("linkString", "linkHREF", "linkOnClick");
  //linkObject is a simple class with only 3 strings as well
}

我的问题是,是否有一种方法可以创建一个类型为“TableCell”的基类,然后这两个类都可以继承并添加到我的列表中?或者有没有更好的方法来处理这个(我敢肯定有,只是我还没有偶然发现!)

4

1 回答 1

4

如果它们是从同一个基类继承的,您可以:

class CellBase 
{
  string Name {get; set;}
  string Value {get; set;}
}

class DataCell : CellBase 
{
  //Data specific properties
}

class LinkCell : CellBase
{
  linkObject cellValue = new linkObject("linkString", "linkHREF", "linkOnClick");
  //linkObject is a simple class with only 3 strings as well
}

//Now create your list with

List<CellBase> cells

或者如果您的收藏是通用的,即

List<object> cells
于 2013-06-25T23:36:03.587 回答