以下代码未设置属性。 这只是什么都不做,并在调试只是向前跳转,甚至与F11设置单个属性时无法设置级联属性正常工作
job.TDataReference.CheckedOut = false;
作业类型的TJob 类我自己建与物业:
public TDataReference TDataReference
{
get
{
return new TDataReference(this.DataReference);
}
set { this.tDataReference = value; }
}
TDataReference也是I类自己建与物业:
public bool CheckedOut
{
get { return (dataRow[CHECKEDOUT].ToString() == "True"); }
set { dataRow[CHECKEDOUT] = value.ToString(); }
}
与和类型的私有成员数据行的DataRow
什么是有趣的是,下面的代码工作正常,并将属性设置:
TDataReference dr = job.TDataReference;
dr.CheckedOut = false;
谁能解释给我。
更新
非常感谢您的回答! 我明白这个问题。 :)
tDataReference取决于this.DataReference中的值,所以最早的时间tDataReference可以设置在何时this.DataReference已知。你怎么看待改变它:
private TDataReference tDataReference;
public TDataReference TDataReference
{
get
{
if(tDataReference == null | tDataReference.Id != this.DataReference)
{
this.tDataReference = new TDataReference(this.DataReference);
}
return this.tDataReference
}
set { this.tDataReference = value; }
}
和wil设置级联属性工作然后???
您的意思是创建它检索一个新的'TDataRefernece'每一次?这违背了制定者的观点。你什么意思'不设置属性'?分配一个值?什么是'tDataReference'? – 2013-04-25 11:55:32