یادداشت های یک برنامه نویس
دوستدار فرهنگ و هنر کهن ایرانی

با استفاده از MHVPersianExtension به راحتی می توانید از تمامی امکانات DateTime برای تقویم جلالی استفاده کنید. برخی ویژگی های آن را با هم مرور می کنیم:

DateTime date1 = "1367/01/08".JalaliToGregorian();

در کد بالا مقدار String را به DateTime تبدیل کردیم. و در DateTime می توانیم همه ویژگی های تقویم میلادی را برای تقویم هجری شمسی نیز داشته باشیم:

DateTime date1 = "1367/01/08".JalaliToGregorian();
int Result1 = date1.JalaliDayNo();
int Result2 = date1.JalaliDayOfYear();
string Result3 = date1.JalaliLongDate();
string Result4 = date1.JalaliDay();
string Result5 = date1.JalaliDayOfWeek();
string Result6 = date1.JalaliMonth();
string Result7 = date1.JalaliMonthName();
string Result8 = date1.JalaliShortDate();
string Result9 = date1.JalaliYear();
string Result10 = date1.JalaliDate("yyyy(yy)-MM-dd(dddd)");
JWeek Result11 = date1.JalaliWeekOfYear();

برای مثال مقدار Result1 برابر 498929 است و این شماره روز از مبدا تاریخ جلالی است و مقدارResult3 "دو شنبه 8 فروردین 1367" است و همانطور که در Result10 می بینید می توانید تاریخ را با هر فرمتی که بخواهید بدست آورید که در این مثال "1367(67)-01-08(دو شنبه)" می باشد.

همچنین می توانیم از سایر ویژگی های DateTime برای متغیر String با فرض آنکه درون آن تاریخ جلالی باشد استفاده کنیم:

string date2 = "1367/01/08";
string Result13 = date2.JalaliAddMonth(2); //"1367/03/08"
string Result14 = date2.JalaliAddYear(5);  //"1372/01/08"

و در نهایت می توانید از متغیر نوع JDate استفاده کنید:

string date1 = "1367/01/08";
JDate jdate1 = date1.ToJDate(); // Jalali To JDate

DateTime date2 = date1.JalaliToGregorian();
JDate jdate2 = date2.ToJDate(); // Gregorian To JDate

که شامل موارد زیر است:

Day 8
DayNN هشت
DayNo 498929
DayOfWeek 3
DayOfWeekName دو شنبه
DayOfYear 8
GregorianDate #3/28/1988 12:00:00 AM#
JalaliDate 1367/01/08
Month 1
MonthNN یک
MonthName فروردین
PBinary 1
PBinaryName دو ماهه اول
PQuad 1
PQuadName چهار ماهه اول
PSeason 1
PSeasonName بهار
PSemiy 1
PSemiyName شش ماهه اول
WeekForYear 1367
WeekNoYear 52
WeekOfYear 1
WeekOfYearNN اول
Year 1367
YearNN یک هزار و سیصد و شصت و هفت

 

همچنین با استفاده از این Extension می تونید عدد را به حروف فارسی تبدیل کنید:

long int1 = 2487632467548973109;
int int2 = 8;
string Result15 = int1.ToPersianName();
string Result16 = int2.ToPersianName(PersianNameType.None);
string Result17 = int2.ToPersianName(PersianNameType.Yekom);

Result15 = "دو تریلیون و چهارصد و هشتاد و هفت بیلیارد و ششصد و سی و دو هزار میلیارد و چهارصد و شصت و هفت میلیارد و پانصد و چهل و هشت میلیون و نهصد و هفتاد و سه هزار و صد و نه"

Result16 = "هشت"

Result17 = "هشتم"

 

دریافت MHVPersianExtension از NuGet

دیدگاه ها: ارسال دیدگاه