با سلام
جدول زیر را دارم:
می خوام در کنار روز تاریخ هم نشان داده شود
به این صورت که اگر روز جمعه بود تاریخ هفت روز بعدی محاسبه شود و کنار روز نمایش داده شود
اگر روز جمعه نبود که عملی انجام نمی شود
لطفا راهنمایی کنید
با تشکر
یک Switch روی روز بزارید و کنترل کنید
مثلا اگر روی جمعه بود تاریخ را Addday(7) کنید
مشخصه
چک کنید اگر این دو روز بود از DateTime.Now استفاده کنید
با تشکر از استاد محترم
من کد زیر را نوشتم
DayOfWeek day = DateTime.Now.DayOfWeek; string temp = ""; List<string> dateweek = new List<string>(); string dat = PersianToGregorian(DateTime.Now); DateTime dt = Convert.ToDateTime(dat); if (day.ToString()== "Friday") { for (int i = 1; i < 6; i++) { if (dt.AddDays(i).Day != 31) { temp = dt.AddDays(i).Year + "/" + dt.AddDays(i).Month + "/" + dt.AddDays(i).Day; dateweek.Add(temp); } } } else { }
اگر روز جمعه باشد به تعداد 5 بار تاریخ را تولید می کند
اما اگر روز جمعه نبود باید چکار کنیم که 5 تاریخ این هفته را بدهد؟
آیا برای هر روز باید چک شود و به تعداد روزهای گذشته تاریخ تولید شود؟
لطفا راهنمایی نمایید
با تشکر
عرض کردم از Switch استفاده کنید روی روز ها و در هر روز تعداد مورد نظر را بسازید
با تشکر از استاد محترم
استاد برای شش ماه اول که 31 روز هست و6 ماه دوم که 30 روز هست چه باید کرد؟
آیا باید شماره ماه را بدست آورد و اگر کمتر از 7 بود میشه 31 و اگر نبود میشه 30؟
اگر درست باشه برای سال کبیسه چجور میشه؟
لطفا راهنمایی کنید
با تشکر
بله باید براساس اساس شماره ماه عمل کنید
سال های کبیسه رو میتونید از قبل مشخص کنید و چک کنید اگر جزو آنها بود تغییرات لازم را اعمال کنید
استاد کد زیر رو نوشتم:
for (int i = 1; i < 6; i++) { if (dt.AddDays(i).Day != 31) { temp = dt.AddDays(i).Year.ToString("0000") + "/" + dt.AddDays(i).Month.ToString("00") + "/" + dt.AddDays(i).Day.ToString("00"); dateweek.Add(temp); } }
اگر روز برابر 31 باشد حط درون if اجرا نمی شود و حلقه یکباز اضافه می شود.
اما در کل حلقه باید یکبار دیگر احرا شود بجای اون روزی که 31 بوده
چکار کنم یکبار دیگر حلقه احرا شود؟
لطفا راهنمایی بفرمایید
اصلا منظورتون رو متوجه نشدم
استاد فرض کنید امروز جمعه است و قرار است پنج تارخ زیر تولید شود:
1396/10/29
1396/10/30
1396/10/31
1396/11/01
1396/11/02
حالا بر طبق کد اگر روز برابر 31 بود تاریخ تولید نمی شود و از تاریخهای فوق همه بجز تاریخ 1396/10/31 تولید می شود. حالا ما 4 تاریخ داریم در حالی که باید 5 تاریخ داشته باشیم یعنی چون روز 31 چاپ نشده است پس باید یک روز دیگر تاریخ تولید شود
امیدوارم منظور را رسانده باشم
لطفا راهنمایی کنید
با تشکر
باید ابتدا چک کنید ماه 31 روزه هست 30 بعد کد ایجاد رو بنا به ماه بنویسید
مثلا اگر بین 1 تا 6 بود 31 هست و در غیر این صورت 30 و در ماه 12 باید 29 روزه باشه
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)