نوشته شده توسط
hamidprogramer
سلام اين كدي كه گذاشتم شماره هفته را نمايش مي دهد البته سال ميلادي، ولي من سال شمسي رو ميخواهم لطفاً راهنمايي فرماييد.
CultureInfo myCI = new CultureInfo("fa-Ir");
Calendar myCal = myCI.Calendar;
CalendarWeekRule myCWR = myCI.DateTimeFormat.CalendarWeekRule;
DayOfWeek myFirstDOW = myCI.DateTimeFormat.FirstDayOfWeek;
myCal.GetWeekOfYear(DateTime.Now, myCWR, myFirstDOW);
سلام.
دقت کنید که weekOfYear بر اساس تاریخ شمسی توسط کلاس PersianCalendar محاسبه میشه، اگرچه ورودی این تابع یک تاریخ میلادی هستش:
DateTime dt = new DateTime(2009, 3, 21, 0, 0, 0);
PersianCalendar pc = new PersianCalendar();
int weekOfYear = pc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Saturday);