یه باگ خیلی ساده ولی بسیار مشکل ساز در کلاس PersianCalendar .NET و جایی خودش رو نشون میده که بخواهیم متد Adddays اونو برای فواصل زمانی طولانی استفاده کنیم
PersianCalender از کلاس Calender ارث میبره.
متدهای AddMonths و AddYears در کلاس Calender از نوع MustOverride (در VB.NET) یا abstract (در #C) هستند.
اما متد AddDays از نوع Overridable (در VB.NET) یا virtual (در #C) هست.
بنابراین متدهای AddMonths و AddYears حتما باید Override بشن و برنامه نویس Persian Calender این کار رو کرده اما حواسش به AddDays که Override کردنش دلخواه است نبوده
بنابراین AddDays برای تاریخ های شمسی همانند تاریخ های میلادی عمل میکنه!!
Ref : http://brad.barnamenevis.org/?p=80
دستهبندی شده در: برنامه نویسی | برچسبها: .NET, Bug, PersianCalander, باگ, تقویم فارسی, تقویم شمسی, تاریخ فارسی, تاریخ شمسی