我该如何使用这个隐式类型的数组类

时间:2016-11-15 07:30:13

标签: c# arrays

我有一个这样的课程,我不能改变,只需要使用它。这个类定义了一个Implicitly类型的数组,这个列表在每一行中都有一个索引和一个数据(如生产者所说):

public partial class LightPenMeta {

    private long lightPenIDField;

    private byte[] lightPenDataField;

    /// <remarks/>
    public long LightPenID {
        get {
            return this.lightPenIDField;
        }
        set {
            this.lightPenIDField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
    public byte[] LightPenData {
        get {
            return this.lightPenDataField;
        }
        set {
            this.lightPenDataField = value;
        }
    }
}

我的问题是我必须使用它并定义一个LightPenMeta []的数组类型,其中包含例如LightPenID = 0,LightPenData =''在第0行。

此代码返回null异常:

var lp = new LightPenMeta[1];

        lp[0].LightPenData = Data;
        lp[0].LightPenID = 0;

问题是如何使用这个类并填充它的行?

1 个答案:

答案 0 :(得分:0)

您必须初始化数组中的第一个元素

LightPenMeta[] lp = new LightPenMeta[1]; //instantiate your array 
lp[0] = new LightPenMeta(); //initialize the first element here
lp[0].LightPenData = Data;
lp[0].LightPenID = 0;

在一行

LightPenMeta[] lp = new LightPenMeta[1];
lp[0] = new LightPenMeta() { LightPenData = Data, LightPenID = 0 };