-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
میشه بگید کجای کارم کلا اشتباه بوده؟
در ضمن فکر نمیکنم همه کسایی که توی این سایت هستن از توی شکم مادرشون برنامه نویس به دنیا اومدن.
همه ما اینجا جمع شدیم تا از هم چیز یاد بگیریم و برنامه نویسمون رو بهتر کنیم.
منم قبول دارم برنامه نویسیم خوب نیست ، اما اومدم تاپیک زدم سوال میکنم تا یاد بگیرم، وگرنه میتونستم مث خیلی های دیگه از روی پروژه هایی که هست کپی بکنم.
نقل قول:
نوشته شده توسط
mojtaba5
var CellValue = dataGridView1.CurrentRow.Cells[0].Value;
var QEdit = db.kalas.Where(c => c.Id_kala == Convert.ToInt(CellValue) && c.Colot== CellValue.ToString())).FirstOrDefault();
جناب
a_mottaghi_pour کد بالای شما رو هم گذاشتم این ارور رو گرفت: Object reference not set to an instance of an object.
فدات شم چرا ناراحت میشی؟
من فقط گفتم که باید بیشتر تلاش کنی و خلاقیت به خرج بدی.
تاریخ عضویتمون تو تالار تقریبا یکیه.اما سایر آمارهامون رو ببین که چقدر متفاوته. شما بیشتر پست دادی، کمتر تشکر کردی و خیلی کمتر تشکر شدی. این بخوبی نشون میده که شما بیشتر سوال کردی تا خواننده مطالب مفید باشی.
اینکه عرض کردم کدت کلا غلطه بخاطر اینه که هیچ تفکیکی بین کدهات وجود نداره. کدی که شما برای کوئری گرفتن مینویسی نباید داخل کدی باشه که شما داری اطلاعات رو فرم میخونی. برنامه باید دارای لایه بندی باشه. البته حالا بحث این تاپیک این نیست ولی اگر شما از ابتدا اصولی برنامه رو بنویسی خیلی راحت تر میشه دیباگش کرد و اشکالات احتمالش رو برطرف کرد.
این کدی که من خدمتتتون دادم ترجمه کد خود شما به زبانی بهتر بود و خب طبیعیه که بازم ارور میده. منکه نمیدونم برنامه شما چیه و فقط چیزی که فهمیدم اینه که ظاهرا CurrentRow را Null حساب میکنه که تنها علت این مساله فقط و فقط نداشتن row یا انتخاب نشدنشه.
بنظر من ممکنه شما از دیتا بایندینگ استفاده کردهب اشید و این کدتون قبل از بایند شدن باشه وب رای همین ارور بده. بهر حال اگر از همون اول کد رو کامل بذارید همه دوستان میتونن اشکالش رو بگن.
دوست خوبم همون پیش فرض ذهنی شما رد زدن تاپیک غلط بوده. شما گفتی "برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟" و این باعث میشه بی جهت گاها مجبور باشی از کدت دفاع کنی.
دوست خوبم منم مثه خودتم و فکر نکنم دارم از بالا به پائین نگاهت میکنم. فرق من با شما در اینه که شاید برام تلاش کردن برای حلل مشکلم خیییییییییییییلی ساده تر از تاپیک زدن و پست دادن باشه. گاهی وقتها خوبه که ما مغرور باشیم و بگیم باید این شمکلم رو خودم هر جور شده رفع کنم.
بهر حال امیدوارم موفق باشی :)
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
اگر صبر داشته باشی من بزودی یک برنامه ساده ویندوزی با gridview مینویسم و برات همینجا میذارم تا کدش رو ببینی شاید بدتردت خورد :)
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
a_mottaghi_pour
فدات شم چرا ناراحت میشی؟
من فقط گفتم که باید بیشتر تلاش کنی و خلاقیت به خرج بدی.
تاریخ عضویتمون تو تالار تقریبا یکیه.اما سایر آمارهامون رو ببین که چقدر متفاوته. شما بیشتر پست دادی، کمتر تشکر کردی و خیلی کمتر تشکر شدی. این بخوبی نشون میده که شما بیشتر سوال کردی تا خواننده مطالب مفید باشی.
اینکه عرض کردم کدت کلا غلطه بخاطر اینه که هیچ تفکیکی بین کدهات وجود نداره. کدی که شما برای کوئری گرفتن مینویسی نباید داخل کدی باشه که شما داری اطلاعات رو فرم میخونی. برنامه باید دارای لایه بندی باشه. البته حالا بحث این تاپیک این نیست ولی اگر شما از ابتدا اصولی برنامه رو بنویسی خیلی راحت تر میشه دیباگش کرد و اشکالات احتمالش رو برطرف کرد.
این کدی که من خدمتتتون دادم ترجمه کد خود شما به زبانی بهتر بود و خب طبیعیه که بازم ارور میده. منکه نمیدونم برنامه شما چیه و فقط چیزی که فهمیدم اینه که ظاهرا CurrentRow را Null حساب میکنه که تنها علت این مساله فقط و فقط نداشتن row یا انتخاب نشدنشه.
بنظر من ممکنه شما از دیتا بایندینگ استفاده کردهب اشید و این کدتون قبل از بایند شدن باشه وب رای همین ارور بده. بهر حال اگر از همون اول کد رو کامل بذارید همه دوستان میتونن اشکالش رو بگن.
دوست خوبم همون پیش فرض ذهنی شما رد زدن تاپیک غلط بوده. شما گفتی "برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟" و این باعث میشه بی جهت گاها مجبور باشی از کدت دفاع کنی.
دوست خوبم منم مثه خودتم و فکر نکنم دارم از بالا به پائین نگاهت میکنم. فرق من با شما در اینه که شاید برام تلاش کردن برای حلل مشکلم خیییییییییییییلی ساده تر از تاپیک زدن و پست دادن باشه. گاهی وقتها خوبه که ما مغرور باشیم و بگیم باید این شمکلم رو خودم هر جور شده رفع کنم.
بهر حال امیدوارم موفق باشی :)
توضیحات دوستمون واقعا برای افراد تازه کاری مثل من خیلی خوب و مفید هست.
امیدوارم بقیه افراد مبتدی(مثل من) از این نکاتی که ایشون گفتن بهره ببرن.
با تشکر فراوان از آقای متقی پور و آرزوی موفقیت برای شما...
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
توضیحات دوستمون واقعا برای افراد تازه کاری مثل من خیلی خوب و مفید هست.
امیدوارم بقیه افراد مبتدی(مثل من) از این نکاتی که ایشون گفتن بهره ببرن.
با تشکر فراوان از آقای متقی پور و آرزوی موفقیت برای شما...
شما لطف داری عزیزم
من خودمم مبتدی هستم :)
داشتم برای دوستمون کدهای کار با گرید را مینوشتم علاقه مند شدم که اصلا یه آموزش در این زمینه بنویسم و تو یه تاپیک جدا بذارم تا همه بخونن.
بهرحال ما مبتدی ها هم دل داریم و میتونیم تاپیک آموزشی در حد خودمون بذاریم. مگه نه؟ :)
امیدوارم مشکل آقا مجتبی و آقا مجتبی ها رو هم حل کنه.
ایشالا بزودی...
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
کل برنامتون رو با پیام خصوصی برام فرستادین و منم فقط فرمتون رو دیدم!ولی اجرا نکردم چون بانکش رو نتونستم اتچ کنم.
حالا من یه سوال دارم :
الان توی گرید شما که به شکل زیر هم هست کدوم ستون دبرگیرنده ی Id هست و کدوم ستون دربرگیرنده ی Color ؟؟؟؟؟
ضمیمه 104388
شما همینو به من بگین کد کامل ویرایش رو بهتون میدم.....
درود
توی این برنامه،شماره کفش Id_kala هست و رنگ Color .
ویرایش و حذف برنامم کار نمیکرد.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
درود
توی این برنامه،شماره کفش Id_kala هست و رنگ Color .
ویرایش و حذف برنامم کار نمیکرد.
خوب دیگه پس مشخصه مشکل کجاس!!!
اول اینکه آخه شما چرا شماره کفش و رنگ رو گذاشتین کلید اصلی؟؟؟؟ مگه امکانش نیست که تکراری بشه؟
شما یه ستون دیه به جدولت اضافه کن مثلا با نام ID بعد اون کلید اصلی و Auto Increment بذار تا خودش اتوماتیک مقدار دهی بشه.
و برای حذف و ویرایش هم فقط از همین ستون استفاده کن چون دیگه همیشه منحصربه فرد خواهد بود.
حالا مشکل کد الانتون :
بعدشم پسر خوب مگه شماره ستون رنگ 1 هست؟؟؟
آخه چرا هر کدی که دوستان میذارن رو کپی میکنی توی برنامت؟؟ تو باید شماره ستون رو هم عوض میکردی که نکردی.
اگه یادت باشه توی یکی از پست ها گفتم که توصیه میکنم به جای شماره ستون بهتره اسم ستون رو بذارین. واسه همچین روزی میگفتم!!!
در اصل باید بگم از صبح تا الان ما رو سرکار گذاشتی!!!!!!!!!!!!!! برو حالشو ببر.............
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
من قصد جسارت نداشتم آقا مرتضی اگه شما یا هر کدوم از دوستان ناراحت شدن ببخشید.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
a_mottaghi_pour
شما لطف داری عزیزم
من خودمم مبتدی هستم :)
داشتم برای دوستمون کدهای کار با گرید را مینوشتم علاقه مند شدم که اصلا یه آموزش در این زمینه بنویسم و تو یه تاپیک جدا بذارم تا همه بخونن.
بهرحال ما مبتدی ها هم دل داریم و میتونیم تاپیک آموزشی در حد خودمون بذاریم. مگه نه؟ :)
امیدوارم مشکل آقا مجتبی و آقا مجتبی ها رو هم حل کنه.
ایشالا بزودی...
اتفاقا خیلی خوبه اگه بتونید آموزش هم بذارین و البته بتونید تمومش کنین.
چون توی این سایت مرسوم شده هرکی میاد یه آموزش میذاره و بعد چند روز میمونه رو هوا...
البته خود منم یکی از همون افراد شدم متاسفانه!!!(چند وقت پیش یه تایپیک آموزشی قرار دادم و بعد از چند پست دیگه بعدش نتونستم ادامه بدم به دلیل مشغله زندگی و ... و فقط یه پست گذاشتم و از دوستان معذرت خواهی کردم)
امیدوارم شما بتونید آموزش رو شروع و از همه مهتر تمومش کنید...
موفق باشید
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
من قصد جسارت نداشتم آقا مرتضی اگه شما یا هر کدوم از دوستان ناراحت شدن ببخشید.
شوخی کردم مهندس!!!
میدونم عمدی نبوده مگه بیکاری بیای ما رو سرکار بذاری!!!
فقط خواستم این آخر شبی مزاح کرده باشم...
حالا به هر حال تونستین مشکلتون رو حل کنید؟؟
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
شوخی کردم مهندس!!!
میدونم عمدی نبوده مگه بیکاری بیای ما رو سرکار بذاری!!!
فقط خواستم این آخر شبی مزاح کرده باشم...
حالا به هر حال تونستین مشکلتون رو حل کنید؟؟
متاسفانه خیر
اگه بخوام کلید اصلی رو ID تنها بگیرم برای گزارش گیری کفش از یک نوع با رنگهای مختلف به مشکل برمیخورم.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
متاسفانه خیر
اگه بخوام کلید اصلی رو ID تنها بگیرم برای گزارش گیری کفش از یک نوع با رنگهای مختلف به مشکل برمیخورم.
نه به چه مشکلی برمیخورین؟ربطی نداره!!!
البته این ID منظور همون شماره کفش نیست ها...
این یه ستون جدیده که خود دیتابیس مقداردهیش میکنه و شما فقط ازش استفاده می کنید...
متوجه منظورم شدین؟
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
نه به چه مشکلی برمیخورین؟ربطی نداره!!!
البته این ID منظور همون شماره کفش نیست ها...
این یه ستون جدیده که خود دیتابیس مقداردهیش میکنه و شما فقط ازش استفاده می کنید...
متوجه منظورم شدین؟
بله متوجه شدم همون اولم یه فیلد ID داشتم که حذفش کردم، فکر کنید یه مدل کفش دارید با شماره 200 ، ازین مدل پنج رنگ دارید، وقتی یکی از رنگها تموم میشه چطور میتونید گزارش بگیرید که اون رنگ رو ندارید؟توی بحث نرمال سازی به ما گفتن اینطور مواقع اون فیلد رو هم کلید اصلی بگیرید.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
بله متوجه شدم همون اولم یه فیلد ID داشتم که حذفش کردم، فکر کنید یه مدل کفش دارید با شماره 200 ، ازین مدل پنج رنگ دارید، وقتی یکی از رنگها تموم میشه چطور میتونید گزارش بگیرید که اون رنگ رو ندارید؟توی بحث نرمال سازی به ما گفتن اینطور مواقع اون فیلد رو هم کلید اصلی بگیرید.
داداش گلم بنظر من شما کلا دیتا بیست رو درست طراحی نکردی.
فدات شما ناراحت نشی ولی بمنظرم بهتره از پروژه های سبک تر شروع کنی. این شاید کمی برات سنگین باشه
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
اتفاقا خیلی خوبه اگه بتونید آموزش هم بذارین و البته بتونید تمومش کنین.
چون توی این سایت مرسوم شده هرکی میاد یه آموزش میذاره و بعد چند روز میمونه رو هوا...
البته خود منم یکی از همون افراد شدم متاسفانه!!!(چند وقت پیش یه تایپیک آموزشی قرار دادم و بعد از چند پست دیگه بعدش نتونستم ادامه بدم به دلیل مشغله زندگی و ... و فقط یه پست گذاشتم و از دوستان معذرت خواهی کردم)
امیدوارم شما بتونید آموزش رو شروع و از همه مهتر تمومش کنید...
موفق باشید
صد تا آموزش نیمه تموم اینجا دیدم :)
برای رفع این مشکل تا تموم نشدنش تاپیک رو نمیزنم
اگر بفرض محال هم زدم قطعا تمومش میکنم نگران نباش عزیزم :)
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
a_mottaghi_pour
داداش گلم بنظر من شما کلا دیتا بیست رو درست طراحی نکردی.
فدات شما ناراحت نشی ولی بمنظرم بهتره از پروژه های سبک تر شروع کنی. این شاید کمی برات سنگین باشه
شما اگه ایده بهتری داری بگو.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
روش طراحی جدول های دیتابیستون رو طبق توضیحات خودتون که به صورت پ.خ برام ارسال کرده بودین براتون پ.خ کردم.
لطف کنید چک کنید و اگه مشکلی بود بگین...
موفق باشید
-
1 ضمیمه
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
سلام.
من یه نمونه برنامه طبق اون ساختار دیتابیسی که بهتون دادم درست کردم تا ازش استفاده کنید.
اینجا میذارمش تا نمونه ای داشته باشین و راحت تر بتونید پروژه ی خودتون رو انجام بدین.
ضمیمه 104445
اول فایل sql رو توی sql اجرا کنید تا دیتابیس به همراه جداول ایجاد بشن و بعد برنامه رو باز کنید و ازش استفاده کنید.
فقط من با ADO به دیتابیس وصل شدم و از LINQ استفاده نکردم.
طبق همین برنامه میتونید بقیه موارد که توی پروژتون هست رو انجام بدین.
اگه مشکلی هم داشتین در همینجا بپرسین.
البته اینم بگم که برای اتصال به دیتابیس بهتره که به صورت چند لایه ای عمل کنید که متاسفانه به دلیل کمبود وقت نتونستم اینکار رو بکنم. و من توصیه میکنم به شما که اگه می خواین اصولی یادبگیرین روش چند لایه رو هم یاد بگیرین.
اگه بدردتون خورد واسم دعا کنید...
موفق باشید
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
یک سوال:
من یک فرم اصلی دارم و میخوام وقتی روی یک دکمه در این فرم اصلی کلیک کردم فرم2 باز بشه و در عین حال یک join هم انجام بشه بین 3 جدول و نتیجه رو در همون فرم 2 به من نشون بده.بعد در فرم 2 میخوام عملیات درج حذف و ویرایش و جستجو بر اساس اون جدولی که برام join کرده رو انجام بدم.
آیا میتونم کد join سه تا جدول رو پس از این کد بنویسم؟
Form2 f2 = new Form2();
f2.show();
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
بسم الله الرحمن الرحیم
نقل قول:
له متوجه شدم همون اولم یه فیلد ID داشتم که حذفش کردم، فکر کنید یه مدل کفش دارید با شماره 200 ، ازین مدل پنج رنگ دارید، وقتی یکی از رنگها تموم میشه چطور میتونید گزارش بگیرید که اون رنگ رو ندارید؟توی بحث نرمال سازی به ما گفتن اینطور مواقع اون فیلد رو هم کلید اصلی بگیرید.
با سلام
پیشنهادی برای پایگاه دادتون دارم:
یک جدول برای رنگ در نظر بگیرید شامل فیلدهای کد رنگ (اتونامبر), نام باشد (کد رنگ کلید اصلی).
جدولی هم برای سایز شامل فیلدهای کد سایز (اتونامبر), شماره باشد (کد سایز کلید اصلی).
جدول کالا که شامل فیلد ID که اتونامبر باشه و به عنوان کلید اصلی تلقی شود و مابقی فیلدهای مورد نیازتون به جز رنگ و سایز
رابطه کالا و رنگ چند به چند است همون طور که فرمودید کفش شماره 1 مثلا رنگ 1 و 2 و ... را دارد و همین طور هر رنگی میتواند مربوط به چند کفش باشد؛ بنابراین یک جدول واسط بین کالا و رنگ قرار میدیم به نام جدول کالا_رنگ
جدول کالا_رنگ: شامل ID که کد اصلی است و اتونامبر و کلید کالا و کلید رنگ که کلیدهای خارجی هستند.
و با همین تفاسیر جدول واسط کالا_سایز
جدول کالا_سایز: شامل ID که کد اصلی است و اتونامبر و کلید کالا و کلید سایزکه کلیدهای خارجی هستند.
موفق باشید.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
یک سوال:
من یک فرم اصلی دارم و میخوام وقتی روی یک دکمه در این فرم اصلی کلیک کردم فرم2 باز بشه و در عین حال یک join هم انجام بشه بین 3 جدول و نتیجه رو در همون فرم 2 به من نشون بده.
بعد در فرم 2 میخوام عملیات درج حذف و ویرایش و جستجو بر اساس اون جدولی که برام join کرده رو انجام بدم.
آیا میتونم کد join سه تا جدول رو پس از این کد بنویسم؟
Form2 f2 = new Form2();
f2.show();
راستش من که اصلا متوجه نشدم منظورتون چیه!!!!
یعنی چی join رو بعد از دستورات بالا بنویسید؟!!
نمونه برنامه ای که گذاشتم رو بررسی کردین؟
همه چی توی اون هست خیلی راحت میتونید مطابق با نیاز خودتون تکمیلش کنید...
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
mojtaba5
یک سوال:
من یک فرم اصلی دارم و میخوام وقتی روی یک دکمه در این فرم اصلی کلیک کردم فرم2 باز بشه و در عین حال یک join هم انجام بشه بین 3 جدول و نتیجه رو در همون فرم 2 به من نشون بده.
بعد در فرم 2 میخوام عملیات درج حذف و ویرایش و جستجو بر اساس اون جدولی که برام join کرده رو انجام بدم.
آیا میتونم کد join سه تا جدول رو پس از این کد بنویسم؟
Form2 f2 = new Form2();
f2.show();
داداش گلم همونطور که قبلا هم گفتم شما یه مقدار پروژه رو سنگین برداشتی. بهتره اول یک سری چیزهای مقدماتی رو یاد بگیری بعد چنین کارهایی بکنی. اصلا و ابدا شما آمادگی انجام پروژه با تیبل های بهم مرتبط رو نداری.
ولی بازم من جوابت رو میدم
ببین شما یک کوئری همیشگی برای جوین داری و یک متد پر کننده دیتا گرید. این دو تا ربطی بهم ندارن و شما ر وقت خاستی میتونی نتیجه این کوئری را بدی به اون متد تا گریدت با نتیجه اون کوئری پر بشه. حالا اینکارو هر وقت عشقته میدتونی انجام بدی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
morteza271
راستش من که اصلا متوجه نشدم منظورتون چیه!!!!
یعنی چی join رو بعد از دستورات بالا بنویسید؟!!
نمونه برنامه ای که گذاشتم رو بررسی کردین؟
همه چی توی اون هست خیلی راحت میتونید مطابق با نیاز خودتون تکمیلش کنید...
برنامه باز نمیشه:((
ببین من میخوام روی فرم اصلی وقتی دکمه کالا رو میزنم،فرم بعدی باز بشه و 3 تا جدول کفش،رنگ و سایز با هم بالا بیان یعنی جوین بشن و توی دیتاگرید ویو بهم نشونش بده.
بعد روی این جدول درج و حذف و ویرایش رو انجام بدم.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
آقا مجتبی دو تا سوال:
1) شما میتونی یک کوئری بنویسی که حاوی جوین مورد نظرت باشه؟ یعنی اون دیتایی که میخوای رو از دیتابیس از طریق کوئری نویسی بگیری. میتونی اینکار رو بکنی یا نه؟
2) اگر به شما یک منبع داده ( حالا هر چی مثلا یه دیتا ست ، یه دیتا تیبل، یه آرایه یه لیست یا ... ) بدن میتونی باهاش گرید را پر کنی؟
>> جواب هر دو بله >>> خب عزیزم کوئری را بنویس و با نتیجش این گرید رو پر کن. چیزی پیچیده ای که نیست
>> جواب یک بله جواب دو نه >> شما به من بگو از اون کوئریت چه خروجی ای در میا تا بهت یاد بدم باهاش گرید ر و پر کنی.
>> جواب یک نه جواب دو بله >> پس شما تو نوشتن کوئری و جوین نویسی مشکل داری. خب این چیز پیچیده ای نیست. کافیه رابطه سه تا جدولت رو بگی و بگی چه فیلد هایی میخوای. براحتی میشه جوین را نوشت. البته اینکار رو باید خودت بکنی. اگر نتونی این کوئری را بنویسی یعنی چیزی یاد نگرفتی و باید یاد بگیری. نیم ساعت هم طول نمکیشه یاد گرفتنش.
>> جواب هر دو نه >> عزیزم قبول کن که باید یه چیزهایی یاد بگیری بعد شروع کنی چنین کاری رو بکنی. میدونم که مجبوری سریع اینکارو بکنی ولی دیگه این میشه که شما میخواهی یکی برات پروژه دانشجوئیت رو حل کنه و خب من و سایر دوستان بخاطر خودشون هم شده اینکارو نمیکنیم. چون بنفعته که تحت فشار قرار بگیری و بری یاد بگیری
موفق باشی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
سلکت زدن و درج رو میتونم انجام بدم با ADO
اما من میخوام وقتی اون فرم جدید باز میشه همزمان توی گریدویوم اون 3 تا جدولی که میخوام سلکت هم بکنم.سوالم این بود که توی فرم لودم میتونم دستور سلکت رو بنویسم؟
نتیجه این سلکت هر چی که هست روش درج و ویرایش رو انجام میدم.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
خب جواب اینو که بهت دادم
شما یک متد بنویس برای کوئری
یک متد بنویس برای پر کردن گرید
بعد وقتی خاستی فرم جدید رو باز کنی اول متد کوئری را اجرا کن
بعد یک نمونه از فرمت بساز
بعد با نتیجه کوئری گرید را پر کن
بعد فرم را نمایش بده
var QueryResult = QueryMethod();
Form MyForm = new Form();
FillGridView(QueryResult);
MyForm.Show();
البته توجه کن که تو متد FillGridView() باید به گرید ویو دسترسی داشته باشی.
ببین پسر خوب اینها هیچکدوم جواب کامل نیست. ولی خب دقیقا به شما میگه باید چکار کنی. شما بشین دست به کد شو بعد هر جا ایراد برخوردی سوال کن.
باور کنی یه ذره تلاش کنی چیز سختی نیست. ضمنا هر جا به مشکل خود کارو متوقف نکن. هر قسمتیش رو بلدی بنویس تا بعدا مشکل قسمتهای دیگش رو حل کنی
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
خب توی ویرایش فهمیدم اشکال کارم کجا بوده من توی انتخاب cells دقت نمیکردم؛ اما چند تا سوال برام پیش اومده:
1. وقتی میخوام رکوردی رو ویرایش کنم باید حتما همه فیلدهاش رو پر کنم وگرنه نمیشه، راهی نداره که فقط اون فیلدی که میخوام ویرایش کنم رو پر کنم؟
2.توی جدول کالا نمیشه کاری کرد وقتی جنسی فروش میره ، از فیلد تعداد به همون تعدادی که فروش رفته کم بشه یا کاربر خودش باید دستی این کارو بکنه؟
3.یه دستور برای پاک کردن متن از روی تکست باکسها بعد از وقتی که درج یا ویرایش میکنم میخوام.
4.توی جدول جدیدم،آیدی کالا و نام کالا رو کلید اصلی گرفتم، آیدی کالا اتونامبر هست، اما وقتی میخوام رکوردهام رو درج کنم رکورد تکراری درج میکنه.باید چکار کنم؟
5.موقع جستجو وقتی گریدویو نتایج رو میاره، باید چکار کنم که کاربر بتونه به صفحه قبل برگرده؟
6.برای جستجو بر اساس 4 فیلد، چه راه خوب و تمیزی هست که کاربر اختیاری یکی از 4 مورد یا هر 4 مورد رو انتخاب و جستجوش رو انجام بده.مثلا جستجو کن بر اساس: نام، شرکت سازنده، قیمت و تعداد.منظورم روی فرم هست نه دستورش.بجز چک باکس.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
1. منظورت تو گریده یا تیبل دیتا بیس؟ اگر گریده که اصلا اینطور نیست و شما هرکدوم رو بخوای میتونی ویرایش کنی و هر کدوم رو نمیخوای خالی بذاری. اما اگر منظورت دیتا بیسه که خب باید اجازه null بودن رو به اون فیلد بدی تا بتونی بدون پر کدنش یک رکورد ایجاد کنی
2. خب برنامه نویسی یعنی همین دیگه. یعنی شما با کد این دستورات رو بدی. معنی نداره کاربر دستی اینکارو بکنه. شما باید کدی بنویسی که وقتی یک جنسی فروختهش د به همون تعداد از موجودی ها کم بشه
3. اینکه خیلی سادست عزیزم
TextBox.Text = string.Empty;
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
نقل قول:
نوشته شده توسط
a_mottaghi_pour
1. منظورت تو گریده یا تیبل دیتا بیس؟ اگر گریده که اصلا اینطور نیست و شما هرکدوم رو بخوای میتونی ویرایش کنی و هر کدوم رو نمیخوای خالی بذاری. اما اگر منظورت دیتا بیسه که خب باید اجازه null بودن رو به اون فیلد بدی تا بتونی بدون پر کدنش یک رکورد ایجاد کنی
2. خب برنامه نویسی یعنی همین دیگه. یعنی شما با کد این دستورات رو بدی. معنی نداره کاربر دستی اینکارو بکنه. شما باید کدی بنویسی که وقتی یک جنسی فروختهش د به همون تعداد از موجودی ها کم بشه
3. اینکه خیلی سادست عزیزم
TextBox.Text = string.Empty;
درود به شما
1.منظورم توی گرید هست، من توی دیتابیس بهش اجازه Null بودن دادم ولی وقتی میخوام توی گرید ویرایشش کنم کلید اصلی رو پر میکنم ولی وقتی ران میکنم این پیغام رو میده: Input string not in a correct format
2.خب میدونم که اگه بخوام گزارش کالاهای باقیمونده رو بدست بیارم، باید کل کالاهام رو - فروش رفته ها بکنم، ولی نمیدونم چطوری وقتی فروش میرن بهش بگم از جدول کالا کم کن.
3. این کد رو کجا بزارم که تکست باکس رو پاک کنه؟
یه مشکل دیگه: اون فیلد آیدی که اتونامبر گذاشتم اول از 1 شماره میزد ، بعد که برنامه رو دوباره اجرا کردم شروع کرده از 1000 عدد میزنه، این مشکل از چیه؟
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
1. باید ببینی این پیغام رو کجا میده. ممکنه ربطی به گرید نداشته باشه. باید ببینی به کدوم قسمت کد ایراد میگیره
2. شما باید کاری کنی وقتی یه جنسی فروش رفت بلافاصله یه دونه از موجودی کالاهات کم بشه. یعنی فیلد تعداد اون کلا رو ویرایش و آپدیت کنی
3. هر جا که میخوای بگی تکست باکست خالی بشه
4. اینطور نمیتونه باشه. ببین این عدد از یک شروع میشه و هی میره بالا. تا زمانی هم که این تیبل هست همین روند رو ادامه میده و هیچ راهی نداره که مثلا شما بگی دوباره از یک شروع کنه. هر تستی که شما میکنی و کلا هر رکوردی که سعی میکنی توش ایجاد کنی حالا چه موفق بشی یا نه یه دونه اونو افزایش میده ولی هرگز و هرگز خود به خودش چیزی عوض نمیشه.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
این کد درج من هست که وقتی اون کد رو میزارم برای پاک کردن تکست باکس ازم ایراد میگیره،شاید من جای درستی نزاشتمش،همچنین بجز فیلد ایدی که اتونامبر هست،بقیه فیلدها میتونن تکراری درج بشن،من میخوام ایدی و nameatr در این جدول منحصر به فرد باشن.:
atr table = new atr
{
nameatr = textBox1.Text=string.Empty,
rayehe = textBox2.Text=string.Empty,
sherkat = textBox3.Text=string.Empty,
unitprice = int.Parse(textBox4.Text=string.Empty),
number = int.Parse(textBox5.Text=string.Empty),
};
database.atrs.Add(table);
database.SaveChanges();
dataGridView1.DataSource = database.atrs.ToList();
اینم کد ویرایش من هست که هر وقت میخوام یکی از فیلدها رو تکی ویرایش کنم به برخی از جاهای برنامه ایراد میگیره:
int a = int.Parse(dataGridView1.CurrentRow.Cells[0].Value.ToString());
string names = dataGridView1.CurrentRow.Cells[1].Value.ToString();
atr table = database.atrs.First(i => (i.idatr == a) && (i.nameatr == names));//System.InvalidOperationException was unhandled
HResult=-2146233079
Message=Sequence contains no elements
table.nameatr = textBox1.Text;
table.rayehe = textBox2.Text;
table.sherkat = textBox3.Text;
table.unitprice =int.Parse( textBox4.Text);Input string was not in a correct format.
table.number = int.Parse(textBox5.Text);Input string was not in a correct format.
dataGridView1.DataSource = database.atrs.ToList();
برای اون فیلد که اتونامبر هست این بار از 2005 شروع کرد به عدد دادن ، مشکل از چیه؟
اون سوال های قبلیمو هم ممنون میشم جواب بدید.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
آقا مجتبای عزیزم شما اشتباهات زیادی تو کد نویسی داری. کاش یکی اطرافت بود تا بتونی ازش کمک حضوری بگیری.
من یه سری از خطاهات رو میگم ولی بعید میدونم با این سطح بتونی این پروژه رو تکمیل کنی:
1. این چیه نوشتی؟
atr table = new atr
یعنی اسم کلاست رو گذاشتی atr ؟
این چه کلاسیه اونوقت؟ اسن روش نام گذاری رو کی بهت یاد داده؟!!!!!!!!!!!!!!
2. این چیه نوشتی؟
nameatr = textBox1.Text=string.Empty
پسر خوب شما میخواهی nameatr که از نظر اسم گذاری هم افتضاحه رو مقدار بدی. خب مقدار تکست باکس رو بهش میدی. دیگه نباید بلافاصله پشتش بنویسی مساوی است با string.Empty . بعد از اتمام همه مراحله که باید تکست باکس رو خالی کنی.
کلا هر جا نوشتی مساوی است با string.Empty را پاک کن.
3. بهتره از دیتا بایندینگ استفاده نکنی. قبلا هم بهت گفتم. شما کوئری را بگیر و بعدا با نتیجه کوئری گریدت را پر کن. نه اینکه نتیجه کوئری را بعنوان دیتا سورس گریدت قرار بدی. اگر نتونستی با نتیجه کوئریت گریدت رو پر کنی خودم بهت یاد میدم.
4. اینا چیه وسط کدت؟ پاکشون کن
//System.InvalidOperationException was unhandled HResult=-2146233079
Message=Sequence contains no elements
5. اینا رو هم پاک کن.
Input string was not in a correct format.
6. داداش گلم تو کد نویسی و اسم گذاری باید بیشتر دقت میکردی. ببین داداش من اینهمه پست دادم فقط برای کمک شما. میتونستم بهت بگم بده خودم برات انجام بدم. اونطوری صد برابر هم بیشتر تکشر میکردی و راضی تر بودی ولی باید بدونی که همه این راه شما رو رفتن. با دقت و تلاش میتونی حلش کنی. هییییییییییییییچ چیز پیچیده ای وجود نداره. بخدا اگر یکی بغلت باشه ایراداتت رو بگه خودت خنده ات میگیره که چقد راحت بوده و نمیدونستی. هر جاش سخت بود من خودم اصلا کدش رو برات مینویسم ولی اینا هیچکدومش سخت نیست.
-
نقل قول: برنامه ای که نوشتم درسته اما چرا Exception میده؟؟؟
دیشب ازت پرسیدم که جواب ندادی. اگر بچه تهرانی بگو فردا میام خونتون خودم بهت یاد میدم چی به چیه. البته رایگان ها :)
-
1 ضمیمه
ارور object reference not set to an instance of an object?
سلام
پروژه های روی کامپیوترم از پری روز مشکل پیدا کردن و نمیتونم هیچ تغییراتی توشون بدم موقع ذخیره تغییرات این ارور رو میدن که عکسش رو ضمیمه کردم، مشکل نمیدونم کجاست حتی پروژه هایی که قبلا کار کرده بودم و هیچ تغییراتی هم توشون ندادم اینطوری شدن.
.net freamWork رو هم عوض کردم نشد حتی دیروز ویندوز رو هم عوض کردم بازم حل نشد ممنون میشم راهنمایی کنین
ضمیمه 106501
-
نقل قول: ارور object reference not set to an instance of an object?
یک مقداری null هستش که قبول نمیکنه
احتمالا یه جا که انتظار داری دیتا هات null نباشه و کد رو بر اون اساس نوشتی این اتفاق افتاده , به نظرم برنامه رو trace کن اگه میتونه
اگه نه که دیتابیس رو بررسی کن
-
نقل قول: ارور object reference not set to an instance of an object?
به دیتا بیس فکر نکنم مربوط بشه ، و در ضمن همه برنامه های روی کامپیوترم اینطوری شدن
وقتی هم که trace میزنم به اولین خطم نرسیده ارور میده ، یعنی مثل اینکه اول ارور میده بعد میره کد ها رو چک میکنه
-
مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
با سلام
من تو برنامه با این خطا روبه رو شدم
cmb_typ.Text = dgv.CurrentRow.Cells[7].Value.ToString();
System.NullReferenceException was caught Message=Object reference not set to an instance of an object.
مشکل اصلی اینجا هست که خانه 7 مقدار دارد و خالی نیست بار اول این خطا رو میده اما بار دوم بدون خطا کار می کنه اگر میشه کمکم کنید
با تشکر
-
نقل قول: مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
ایا کسی نیست منو کمک کنه
خواهش می کنم راهنمایی کنید من چیکار کنم
خیلی ممنون
-
نقل قول: مشکل : اگر می تونید در خطا که میده برنامه من کمکم کنید
نقل قول:
نوشته شده توسط
mortaza94
با سلام
من تو برنامه با این خطا روبه رو شدم
cmb_typ.Text = dgv.CurrentRow.Cells[7].Value.ToString();
System.NullReferenceException was caught Message=Object reference not set to an instance of an object.
مشکل اصلی اینجا هست که خانه 7 مقدار دارد و خالی نیست بار اول این خطا رو میده اما بار دوم بدون خطا کار می کنه اگر میشه کمکم کنید
با تشکر
با درود و قبولی طاعات و عبادات شما
یکی از این دوحالته
1.یا شما سلولی رو انتخاب کردید که وجود خارجی نداره(سلول ها از 0 شروع میشن یعنی اگر هفتیم سلوله وقتی از 1 میشمورینش در واقع باید بنویسید سلول 6)
2.یک چیزی ارش میخواین که قابل انجام نیست,کد بالا که میگه نمیتونه شیئ رو به رشته تبدیل کنه و واسطی ازش بسازه.مثلا نمیشه تصویر,فیلدهای خاص رو به رشته برگردوند.
دقیقا بگین در سلول مورد نظر شما چه چیزی قرار میگیره؟
-
نقل قول: ارور object reference not set to an instance of an object?
دوست عزیز یک یا چند تا از رفرنس های ویژوال استادیوت از بین رفته
اگه همه ی پروژهات همین طور شدن باید ویژوال رو یک بار پاک و مجدد نصب کنی
-
نقل قول: ارور object reference not set to an instance of an object?
باید برنامتون رو تو Visual Studio اجرا کنید ببینید از کدوم خط داره ایراد میگیره.