List 增添数据 报 未将对象引用设置到对象的实例
List <T> 添加数据 报 未将对象引用设置到对象的实例
先有声明一个类如下
public class Cmocta
{
public Cmocta()
{ }
private decimal? _ta024;
private List<Cmoctb> _cmoctbs;
/// <summary>
/// 子类
/// </summary>
public List<Cmoctb> Cmoctbs
{
set { _cmoctbs = value; }
get { return _cmoctbs; }
}
}
然后我在窗体上的代码如下,
Maticsoft.Model.Cmoctb modelb = new Maticsoft.Model.Cmoctb();
modelb.tb001 = model.ta001;
modelb.tb002 = model.ta002;
modelb.tb003 = model.ta003;
model.Cmoctbs.Add(modelb);
以上编译可以通过,只是运行到 model.Cmoctbs.Add(modelb);就报未将对象引用设置到对象的实例错误,该如何修正代码呢
------解决方案--------------------
Cmoctbs没有初始化,在model的构造函数中加上
_cmoctbs = new List<Cmoctb>()
------解决方案--------------------
报错说的很好啊
_cmoctbs没有实例化,在添加数据之前给它实例化一下
------解决方案--------------------
_cmoctbs没有实例化
------解决方案--------------------
先有声明一个类如下
public class Cmocta
{
public Cmocta()
{ }
private decimal? _ta024;
private List<Cmoctb> _cmoctbs;
/// <summary>
/// 子类
/// </summary>
public List<Cmoctb> Cmoctbs
{
set { _cmoctbs = value; }
get { return _cmoctbs; }
}
}
然后我在窗体上的代码如下,
Maticsoft.Model.Cmoctb modelb = new Maticsoft.Model.Cmoctb();
modelb.tb001 = model.ta001;
modelb.tb002 = model.ta002;
modelb.tb003 = model.ta003;
model.Cmoctbs.Add(modelb);
以上编译可以通过,只是运行到 model.Cmoctbs.Add(modelb);就报未将对象引用设置到对象的实例错误,该如何修正代码呢
------解决方案--------------------
Cmoctbs没有初始化,在model的构造函数中加上
_cmoctbs = new List<Cmoctb>()
------解决方案--------------------
报错说的很好啊
_cmoctbs没有实例化,在添加数据之前给它实例化一下
------解决方案--------------------
_cmoctbs没有实例化
------解决方案--------------------
- C# code
private List<Cmoctb> _cmoctbs; public List<Cmoctb> Cmoctbs { get { if (_cmotbs == null) { _cmotbs = new List<CMoctb>(); } return _cmoctbs; } set { _cmoctbs = value; } }