ايران ويج

نسخه‌ی کامل: درست کردن شماره دانشجویی برای هر دانشجو
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان
من دارم یه فرم درست می کنم برای ثبت نام دانشگاه.می خوام موقع ثبت نام وقتی کاربردکمه ی ثبت نام را زد در مقابل فیلد userName ،شماره ی دانشجویی از قبل توسط برنامه تولید شده باشه(شماره دانشجویی به عنوان userName در نظر گرفته شده) و فقط کاربر فیلد های دیگر را پر کند.
از آنجایی که شماره دانشجویی هر دانشجو طبق فرمت خاصی نوشته میشه ،می خواستم با توجه به سال ورود دانشجو ،دو رقم اولش با آن شروع شود.
ولی مشکلم از آنجا شروع شد که در #C ،کلاس DATETIME ،تاریخ را به صورت میلادی می دهد.
تو این کدی که من نوشتم ،هر بار آخرین شماره ی دانشجویی خوانده می شود و یکی به آن اضافه می شود.من با فرمول های ریاضی تونستم سال شمسی را درس کنم ولی چون زمان تغییر سال شمسی و میلادی یکی نیست بعدا با مشکل روبرو می شوم.
اگر کسی می تونه در این رابطه به من کمک کنه ،لطفا نظرشو بگه.
کد:
date = DateTime.Now;
        sql_comm.CommandText = "select MAX(userName_as_stdNum)" +
            "from Tbl_student_register ";
        sql_conn.Open();
        object  maxID = sql_comm.ExecuteScalar();

        if (maxID == DBNull.Value)
        {
            intmaxid = ((Convert.ToInt32(date.Year)-621)%1300)*100000 ;
        }
        else
       {
           intmaxid = Convert.ToInt32(maxID);
          //  strid = maxID.ToString ();
           //intmaxid = int.Parse(strid.Remove(0, 2));

            intmaxid += 1;
        }
        txtUser.Text = intmaxid.ToString ();
        sql_conn.Close();
.net گلاس داره واسه تاریخ شمسی کانلا دقیقه و مشکلی هم نداره :
این واسه vb.net
کد:
Dim TARIKH As New System.Globalization.PersianCalendar
        Dim strTarikh As String = "{0}/{1}/{2}"
        strTarikh = String.Format(strTarikh, TARIKH.GetYear(DateTime.Now), TARIKH.GetMonth(DateTime.Now), TARIKH.GetDayOfMonth(DateTime.Now))
        Me.Text = strTarikh
سلام

اينم همون بالايي به زبان سي شارپ

کد:
{
         System.Globalization.PersianCalendar TARIKH = new System.Globalization.PersianCalendar();
        string strTarikh = "{0}/{1}/{2}";
         strTarikh = string.Format(strTarikh, TARIKH.GetYear(DateTime.Now), TARIKH.GetMonth(DateTime.Now), TARIKH.GetDayOfMonth(DateTime.Now));
         this.Text = strTarikh;
     }
مرسی دوستان .مشکلم حل شد.