今天使用反射器我找到了这一行:
return date.AddDays((double) ((((dayOfWeek < date.DayOfWeek) ? (DayOfWeek.Saturday | DayOfWeek.Monday) : DayOfWeek.Sunday) + dayOfWeek) - date.DayOfWeek));
但编译器抛出错误:
运算符'+'不能应用于'System.DayOfWeek'和'System.DayOfWeek'类型的操作数
任何想法。
有什么问题?
答案 0 :(得分:5)
System.DayOfWeek
是enum
,因此未为其定义operator +
。您可以将它们转换为int
类型以使其正常工作。
答案 1 :(得分:1)
这里没有错,只是DayfWeek没有任何重载运算符+
。
是enum
,最后是数字类型,但在能够执行数学运算之前,您需要转换为具体的数字类型。
答案 2 :(得分:0)
您必须将“DayOfWeek.Sunday”转换为Number First。喜欢(Int32)DayOfWeek.Sunday等。