C#属性-需要子属性
本文关键字:属性 | 更新日期: 2023-09-27 18:30:04
我的任务是将xml和json数据解析到应用程序中。我正在尝试创建一个包含我将要收集的所有数据的属性类。
这是我的问题
我创建了一个类,其中包含天气数据、温度、风、紫外线指数等变量。我还创建了天数。我可以单独查看这些日子,但不能作为一个整体查看。例如
Monday m = new Monday();
m.TempHiF = "65";
我想做的就是这个。
WDay d = new WDay();
d.Monday.TempHiF = "65"
d.Tuesday.TempHiF = "67";
等等。我对C#还很陌生,甚至不知道该用谷歌搜索什么。我已经绞尽脑汁一个星期了,但收效甚微。我对其他关于存储数据的建议也持开放态度。
您所要做的就是让WDay在所有日子都有属性:
public class WDay
{
public Day Monday {get;set;}
...
然后使Day
类具有TempHiF
属性,依此类推:
public class Day
{
public string TempHif {get;set;}
...
}
请确保WDay的构造函数使用新实例初始化其所有Day属性,以避免出现null引用异常。
class Week {
public Day Sunday{get;set;}
public Day Monday{get;set;}
// etc...
}
class Day {
// Define day-bound properties here
}
你只需要嵌套你的类,这样你的工作日类就有一个星期一类、一个星期二类等等。然后给你的每个工作日类一个TempHi属性或你想要的任何其他属性,然后只引用那些
class WDay{
public Monday mon = new Monday();
public Tuesday tue = new Tuesday();
public Wednesday wed = new Wednesday();
}
class Monday
{
private string _TempHi;
public TempHi
{
get {
return _TempHi;
}
set {
_TempHi = value;
}
}
}
class main
{
WDay WeekDay = new WDay();
WeekDay.mon.TempHi = "65F";
}