从Dictionary值创建列表,其中Dictionary值是一个类,我想要的列表应该具有该类的一个对象

时间:2014-08-08 12:54:51

标签: c# hbase thrift

当我使用thrift从HBase读取一行时,我得到了一个

类型的对象
public class TRowResult : TBase, TAbstractBase {
    public TRowResult.Isset __isset;

    public TRowResult();

    public Dictionary<byte[], TCell> Columns { get; set; }
    public byte[] Row { get; set; }

    public void Read(TProtocol iprot);
    public override string ToString();
    public void Write(TProtocol oprot);

    [Serializable]
    public struct Isset {
      public bool columns;
      public bool row;
    }
}

它有一个字典,其中key是列限定符,值是

public class TCell : TBase, TAbstractBase {
    public TCell.Isset __isset;

    public TCell();

    public long Timestamp { get; set; }
    public byte[] Value { get; set; }

    public void Read(TProtocol iprot);
    public override string ToString();
    public void Write(TProtocol oprot);

    [Serializable]
    public struct Isset {
      public bool timestamp;
      public bool value;
    }
}

现在我想创建一个每个TCell中都存在的byte []列表。来自字典中的所有TCell。

1 个答案:

答案 0 :(得分:0)

这在LINQ中很简单:

var TCellValues = Columns.Values.Select( c => c.Value );