نمایش نتایج 1 تا 12 از 12

نام تاپیک: درخواست کمک برای انجام پروژه دانشجویی

  1. #1

    Question درخواست کمک برای انجام پروژه دانشجویی

    با سلام

    از انجا که مبتدی هستم و اطلاعات کمی دارم ،برای انجام پروژه نهایی دانشگاه احتیاج به کمک دارم.
    برنامه ای که می خوام بنویسم با C#‎ و SQL است.
    جداولشو طراحی کردم و فرمها هم تا حدودی آماده است ولی خیلی به مشکل بر می خورم. و زمانم برای یه ادم مبتدی کمه
    چطور می تونم کمک بگیرم؟

  2. #2
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    سلام مهندس جان.
    پروژه ای که داری مینویسی چیه؟ عموما برای پروژه دانشجویی زیاد از تکنلوژی خاصی استفاده نمی کنند.
    موضوع برنامه رو بگو. مشکلاتی در هین کار بهش بر میخوری بگو.
    اگه جایی خطایی رخ داد و برات سخت بود عکس بگیر یا تکه کدت با خطا رو بزار تا دوستان تو انجمن کمکت کنند تا زودتر پروژه خودت رو انجام بدی و بتونی بیشتر وارد دنیای برنامه نویسی بشی.

  3. #3

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    عنوان پروژه ات را هم بگو
    و بعد تحلیلت از جداول را هم ارائه بده ؟
    عکس های از برنامه ات را قرار بده.

  4. #4

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    جداولی که در Sql ایجاد کردم و همینطور فرم صفحه اصلی و فرم اول برای ثبت اطلاعات را گذاشتم.
    برای تبدیل تاریخ نمی دونم باید چی کار کنم هم اینکه فرمت ورودی قبل از ثبت چک بشه
    کدهای برای کلید ثبت هم نوشتم و اطلاعات را وارد دیتا بیس می کنه ولی نمی دونم چطور اینجا قرار بدم که بهم نریزه
    ممنون میشم راهنمایی بفرمایید


    1.png2.png3.png

  5. #5
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    برای تبدیل تاریخ فرمت بانگتون از نوع Date انتخاب کنید و اگر اشنایی با متدهای الحاقی دارید Extensions Metod از نوع string یا هر شی که میخواید عمل تبدیل روش انجام بشه بسازید و توابع تبدیل تاریخ رو اینجوری حلش کنید نیاز به عمل تبدیل به راحتی قابل حل هست یعنی هنگام ثبت متد ToMiladi و هنگام نمایش از ToShamsi استفاده کنید
    شما باید مشخص کنید از ORM ها میخواید استفاده کنید یا دیتاست و دیتاریدر سنتی
    این قسمت هم نامفهمومه بیشتر توضیح بدید
    کدهای برای کلید ثبت هم و اطلاعات را وارد دیتا بیس می کنه ولی نمی دونم چطور اینجا وارد کنم که بهم نریزه

  6. #6

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    متوجه توضیحات شما نشدم، در نظر داشته باشید که من مبتدی هستم
    اول از همه می خوام کنترل کنم فرمت ورودی تاریخ را در textbox و بعد هم شمسی رو به میلادی تبدیل کنم

  7. #7
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    متدهای Extension جهت اضافه کردن یک متد اضافی یا دلخواه به لیست متدهای اشیایی که جزو اشیاء کلیدی و رزرو شده دات نت یا کلاسهای ساخته شده شرکتهای دیگر هست می باشد
    مثلا دات نت یک کلاس بنام Datetimeداره که در فضای نام System هست خب وقتی فیلدی تعریف میکنیم از نوع DateTime بدین صورت:

    public DateTime date{get;set;}

    و بخوایم تاریخ رو در یک تکست باکس نشون بدیم بدین صورت هست

    textbox.text=date.ToShortDateString();

    خب ما نیاز به یک تاریخ شمسی داریم اگر بعد از date نگاه کنیم فقط متدهای پیش فرض وجود دارند مثل ToShortDateString ولی ما نیاز به تاریخ شمسی داریم
    یکی از راههای خوب و مناسب همین Extensions متدهاست

    کافیه یک کلاس static تعریف کنیم بعد درون این کلاس یک متد از نوع string تعریف و این متد یک ورودی از نوع DateTime هم قبول میکند اسم کلاس دلخواه هست میزاریم شمسی و یک تابع بنام ToShamsi هم اضافه میکنیم ذکر کلمه this قبل از ارگومان الزامی هست چون باید مشخص کنبم که این متد بر روی کلاسهای از نوع DateTiem اجرا میشود

    public static class ShamsiDate
    {
    public static string ToShamsi(this DateTime dt)
    {

    try
    {
    var dateSh = new System.Globalization.PersianCalendar();
    return dateSh.GetYear(dt) + "/" + dateSh.GetMonth(dt).ToString("00") + "/" + dateSh.GetDayOfMonth(dt).ToString("00");

    }
    catch (NotImplementedException ex)
    {
    return ex.ToString();
    }
    }

    }




    تابع اضافی آماده شد به همین سادگی .
    در مثال قبل میایم یک بار دیگه تاریخ درون یک تکست باکس نمایش بدیم


    var dt= DateTime.Now;
    textbox.text=dt.ToShamsi();

    اینبار یک ToShamsi به لیست متدهای تاریخ اضافه شده که میاد تاریخ رو تبدیل به شمسی میکننه
    میتونید یک تست بزنید و امتحان کنید
    خب برای تبدبل تاریخ میلادی به شمسی هم بر عکس متد ToShamsi یک تا بع اضافه کنید بنام ToMiladi ولی آرگومان تابع از نوع string باشه و بدنه تابع از نوع DateTime چون تاریخ شمسی یک نوع رشته حساب میشه و باید به نوع DateTime تبدبل و به دیتابیس ارسال کنیم


    public static DateTime ToMiladi(this string shamsiDate)
    {
    if (!string.IsNullOrEmpty(shamsiDate))
    {
    var pc = new PersianCalendar();
    DateTime dt = Convert.ToDateTime(pc.ToDateTime(Convert.ToInt32(s hamsiDate.Substring(0, 4)),
    Convert.ToInt32(shamsiDate.Substring(5, 2)),
    Convert.ToInt32(shamsiDate.Substring(8, 2)), 0, 0, 0, 0, PersianCalendar.PersianEra)
    );
    return dt;
    }
    return DateTime.Now;
    }




    حالا قضیه برعکس شد وقتی یک تکست باکس داشته باشیم و تاریخ شمسی دورنش باشه برای تبدیل به شمسی کافیه بنویسیم



    DateTime dt;
    dt=textbox.text.ToMiladi;


    این از متدهای الحاقی موفق باشید

  8. #8

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    چرا به میلادی تبدیل کنید؟! شما که شمسی دریافت میکنید همون را هم در دیتابیس ثبت کنید اگر فیل را از نوع Date درست کرده باشید در نسخه های SqlServer زیر 2008 فکر میکنم تاریخ شمسی را درست ذخیره نخواهد کرد مگر اینکه در نسخه های پایینتر فیلد تاریخ را از نوع رشته ای با طول 10 کاراکتر بگیرید

    برای بررسی صحت تاریخ هم میتوانید مقدار تکست باکس را کاراکتر به کاراکتر بررسی کنید یعنی بخش سال و ماه و روز را جدا کنید و بررسی کنید تقریبا یه چیزی تو این مایه ها :
    این یک تابع است که رشته تکست باکس را بهش میدید و به شما true یا false خواهد داد (البته این تابع خیلی ساده و کلی است و خیلی نکات ریز را درنظر نگرفتم مانند سال کبیسه و دیگرجزئیات) فکر میکنم برای یک کار دانشجوئی کافی باشد!

    public static bool ChkDate(string n) //این تابع تاریخ ورودی را ازلحاظ درستی چک میکند
    {
    //درصورت نادرست بودن فالس برمیگرداند
    int m, d;
    m = int.Parse(n.Substring(5, 2)); //جداکردن بخش ماه
    d = int.Parse(n.Substring(8, 2)); //جداکردن بخش روز
    if (!(m >= 1 && m <= 12))
    {
    MessageBox.Show("ماه را در تاریخ صحیح وارد کنید", "توجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
    return false;
    }
    if (!(d >= 1 && d <= 31))
    {
    MessageBox.Show("روز را در تاریخ صحیح وارد کنید", "توجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
    return false;
    }
    return true;
    }



    البته برای تاریخ راههای دیگری هم وجود دارد

  9. #9

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    دوست عزیز پیشنهاد بنده اینه که یه دفترچه تلفن که توی همین سایت هم زیاده پیدا کنید و کدهاون رو کپی برداری کند و اونجاهایی که نیاز هست رو تغییر بدین. چون شما الان دیتابیستون اماده هست حالا یا خوب یا بد فقط کد نویسی مونده اونم که سمپل زیاده.
    موفق باشید.

  10. #10

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    در ضمن برای دریافت تاریخ بصورت خیلی ساده میتوانید بجای تکست باکس از Masked TextBox استفاده کنید و خصوصیت MAsk آنرا برابر 9999/99/99 قرار بدید تا کاربر مجبور نباشد علامتهای / را خودش تایپ کند و همینطور بجای سال و ماه و روز هم از کاربر خودش عدد دریافت میکند و کاراکتر دیگری قبول نخواهد کرد اینطوری برنامه ات بهتر خواهد شد و خیلی از بررسیها را کمتر خواهد کرد
    همینطور کنترل Masked textbox خصوصیت MaskFull را دارد که مقدار false به شما خواهد داد درصورتی که کاربر مقادیر آنرا بطور کامل تایپ نکرده باشد

  11. #11

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    این هم یک تابع ساده برای اینکه در تکست باکس تاریخ مقدار تاریخ سیستم را نمایش دهی (البته با کمی تغییر میتوانی از آن برای تبدیل تاریخ میلادی به شمسی هم استفاده کنی ) و همینطور با همین روش برعکس کار را هم میتوانی انجام دهی
    این تابع تاریخ را از سیستم میگیرد و آنرا به معادل شمسی تبدیل میکند و بصورت رشته تاریخ شمسی را برمیگرداند
    توجه داشته باشید که در ابتدای فایل باید دستور ایمپورت (using) زیر را باید بنویسید
    using System.Globalization;


    public static string shamsiDate()
    {
    //============ تبدیل میلادی به شمسی
    PersianCalendar pc = new PersianCalendar();
    int y, m, d;
    y = pc.GetYear(DateTime.Today);
    m = pc.GetMonth(DateTime.Today);
    d = pc.GetDayOfMonth(DateTime.Today);
    string yy, mm, dd;
    yy = y.ToString();
    if (m < 10) mm = "0" + m.ToString(); else mm = m.ToString();
    if (d < 10) dd = "0" + d.ToString(); else dd = d.ToString();
    string fd = yy + "/" + mm + "/" + dd;
    return fd;
    }


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

  12. #12
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: درخواست کمک برای انجام پروژه دانشجویی

    بحث درباره فیلد تاریخ زیاد شده توی این سایت
    استاندارد ذخیره کردن تاریخ میلادی هست به دلیل بحث محاسبات روی فیلد تاریخ یا چند زبانه بودن برنامه و سایر موارد و مشکلات تاریخ شمسی
    این متدهای اضافی هنگام کار با ORM ها خیلی کارامد هستن دوستانی که شی گرا برنامه نویسی کردند شاید صحت گفته من رو تایید کنند
    در ضمن اگر دوست ما دفترچه تلفن میخواست خودشون جستجو میزدن یا تقاضای یک دفترچه تلفن میکردن سوالی که پرسیده بودن درباره فیلد تاریخ بود که همگی دوستان راهنمایی کردند و البته ایشون کدهای درج و ویرایش رکورد رو نوشتند

تاپیک های مشابه

  1. سوال: کمک برای انجام پروژه دانشجویی
    نوشته شده توسط salam99999 در بخش MySQL
    پاسخ: 0
    آخرین پست: سه شنبه 24 دی 1392, 19:25 عصر
  2. پاسخ: 9
    آخرین پست: دوشنبه 15 اسفند 1390, 10:57 صبح
  3. کمک برای انجام پروژه درسی
    نوشته شده توسط best2009 در بخش توسعه‌ی لینوکس و نرم افزارهای آزاد
    پاسخ: 0
    آخرین پست: چهارشنبه 04 آذر 1388, 10:44 صبح
  4. پاسخ: 5
    آخرین پست: سه شنبه 10 اردیبهشت 1387, 10:48 صبح
  5. کمک برای انجام پروژه
    نوشته شده توسط bahman.net در بخش C#‎‎
    پاسخ: 3
    آخرین پست: سه شنبه 09 اسفند 1384, 01:05 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •