public class Foo{ public DateTime dateOfBirth {get; set;} public Age age {get; set;}}
和年龄如下:
Public class Age{ public DateTime dateOfBirth {get; set;} //..Calculate age here}
现在,我希望Foo.Age.dateOfBirth自动等于Foo.dateOfBirth,例如当用户执行以下 *** 作时:
var Foo foo = new Foo();foo.dateOfBirth = //..whatever
注意,这不能在构造函数中,因为用户可能没有在构造函数中设置dob,这也不会涵盖dob更改的情况.
不能做他的事吗?
解决方法 你可以使用setter:public class Foo{ private DateTime _dateOfBirth; public DateTime DateOfBirth { get { return _dateOfBirth; } set { _dateOfBirth = value; if(Age != null) Age.DateOfBirth = value; } } public Age Age { get; set; }}
如果你使DateOfBirth属性依赖于Age属性更容易,你可以使用C#6表达式bodIEd Readonly属性:
public class Foo{ public DateTime DateOfBirth => Age?.DateOfBirth ?? DateTime.MinValue; public Age Age { get; set; }}总结
以上是内存溢出为你收集整理的C#如何使类变量引用类中的另一个值全部内容,希望文章能够帮你解决C#如何使类变量引用类中的另一个值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)