PDA

View Full Version : ویرایش رکوردهای گریدویو با منبع استروپروسیجر



montazer313
شنبه 30 خرداد 1394, 19:47 عصر
با سلام خدمت دوستان گرامی
بنده در برنامه ای که با asp.net و زبان #C نوشته ام از Entity framework استفاده می کنم.
در جایی نیاز است که اطلاعات را از دو جدول دیتابس در Grid view نمایش بدهم.هم از view و هم از استروپروسیجر به صورت جداگانه برای این کار استفاده کردم. اما در هر دو صورت امکانات گرید ویو برای حذف و ویرایش رکورد با مشکل مواجه میشه! راه حل این مشکل چیه و به چه روشی باید عمل بشه ؟
با تشکر و سپاس فراوان

sempay_ninjutsu
دوشنبه 01 تیر 1394, 16:16 عصر
با سلام خدمت دوستان گرامی
بنده در برنامه ای که با asp.net و زبان #C نوشته ام از Entity framework استفاده می کنم.
در جایی نیاز است که اطلاعات را از دو جدول دیتابس در Grid view نمایش بدهم.هم از view و هم از استروپروسیجر به صورت جداگانه برای این کار استفاده کردم. اما در هر دو صورت امکانات گرید ویو برای حذف و ویرایش رکورد با مشکل مواجه میشه! راه حل این مشکل چیه و به چه روشی باید عمل بشه ؟
با تشکر و سپاس فراوان
سوالتو جامع تر مطرح کن....یه گرید داری که اطلاعات اون از 3 تا جدول پر میشه (خب اینکه یه ویو میشه همه چیش با هم نیازی به استور پروسیجد نداری....)یا میتونی تو انتیتی فریم ورک جوین بزنی...
بعدش میخای ویرایش انجام بدی خب رو هر ایتم کلیک کردی ای اونو بگیر بعد رکورد مورد نظر دیتابیس رو پیدا کن هر کاری دوس داری انجام بده....
بازم نفهمیدم کجا مشکل پیش میاد؟؟؟!!!!کی خطا میده !!!کجا خطا میده..........
موفق باشید

montazer313
سه شنبه 02 تیر 1394, 14:08 عصر
سلام
وقتی از یک view برای پر کردن Gridview استفاده می کنم برای ویرایش رکوردها که با فعال کردن امکان ویرایش در گرید ویو، امکانپذیر می شود با مشکل مواجه شده مثلا برای ویرایش فیلد تاریخ از یک رکورد با پیغام خطای زیر مواجه میشه :
Error while setting property 'GetDate1': 'The property 'GetDate1' is part of the object's key information and cannot be modified. '.

در یک برنامه آموزشی شنیدم که Entity Framework از view پشتیبانی نمی کنه و باید از استروپروسیجر استفاده کنیم، اما در این حالت هم برای ویرایش رکورد با پیام خطای زیر را میده:
The GridView 'GridView1' fired event RowEditing which wasn't handled.



ظاهرا با استروپروسیجر اشکالات برای ویرایش و حذف و sort کردن ستونهای گریردویو با کلیک بر روی عنوان ستون و ...بیشتر است.

لطفا بفرمایید بهترین روش بدون اشکال برای این منظور چیست؟
با تشکر فراوان

montazer313
چهارشنبه 03 تیر 1394, 08:50 صبح
سلام
وقتی از یک view برای پر کردن Gridview استفاده می کنم برای ویرایش رکوردها که با فعال کردن امکان ویرایش در گرید ویو، امکانپذیر می شود با مشکل مواجه شده مثلا برای ویرایش فیلد تاریخ از یک رکورد با پیغام خطای زیر مواجه میشه :
Error while setting property 'GetDate1': 'The property 'GetDate1' is part of the object's key information and cannot be modified. '.

در یک برنامه آموزشی شنیدم که Entity Framework از view پشتیبانی نمی کنه و باید از استروپروسیجر استفاده کنیم، اما در این حالت هم برای ویرایش رکورد با پیام خطای زیر را میده:
The GridView 'GridView1' fired event RowEditing which wasn't handled.



ظاهرا با استروپروسیجر اشکالات برای ویرایش و حذف و sort کردن ستونهای گریردویو با کلیک بر روی عنوان ستون و ...بیشتر است.

لطفا بفرمایید بهترین روش بدون اشکال برای این منظور چیست؟
با تشکر فراوان

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

sempay_ninjutsu
پنج شنبه 04 تیر 1394, 08:41 صبح
سلام
لطفا دوستانی که تجربه دارن در این زمینه پاسخ بدهند.
با تشکر
دوست عزیز چرا کاره خودتو سخت می کنی....
برای همچین کارایی راههای ساده تریم هست...که خوانایی کد شمارو بالاتر میبره و راحت میتونی کار کنی...
شما دوتا مسعله رو از هم جدا کن..نمایش اطلاعات و ویرایش اطلاعات
نمایش اطلاعات را با ویو انجام بده....
اما واسه ویرایش Id رکورد جاریتو بگیر و خودت عملیات crud رو روی جداولت اعمال کن..
مثلا یه ویو داری که نام پرسنل /تعداد خرید/و... داره که جدول پرسنل و جدول خریدات از هم جدا هستن و در قالب ویو نمایش میدی..
حالا میخای یه ویرایش انجام بدی مثلا تعداد خرید رو کم کنی...
روی هر رکورد شماره پرسنل رو بگیر بعد برو تو جدول خریدات یک رکوردو مثلا حذف کن/یا اضافه کن یا ویرایش کن...دیگه عملیات ویرایش و با ویو انجام نده خودت مدیریتش کن..
این مثال شاید مفهومی درس نباشه اما منطق کاری و بهت میرسونه...
موفق باشید

montazer313
پنج شنبه 04 تیر 1394, 14:36 عصر
دوست عزیز چرا کاره خودتو سخت می کنی....
برای همچین کارایی راههای ساده تریم هست...که خوانایی کد شمارو بالاتر میبره و راحت میتونی کار کنی...
شما دوتا مسعله رو از هم جدا کن..نمایش اطلاعات و ویرایش اطلاعات
نمایش اطلاعات را با ویو انجام بده....
اما واسه ویرایش Id رکورد جاریتو بگیر و خودت عملیات crud رو روی جداولت اعمال کن..
مثلا یه ویو داری که نام پرسنل /تعداد خرید/و... داره که جدول پرسنل و جدول خریدات از هم جدا هستن و در قالب ویو نمایش میدی..
حالا میخای یه ویرایش انجام بدی مثلا تعداد خرید رو کم کنی...
روی هر رکورد شماره پرسنل رو بگیر بعد برو تو جدول خریدات یک رکوردو مثلا حذف کن/یا اضافه کن یا ویرایش کن...دیگه عملیات ویرایش و با ویو انجام نده خودت مدیریتش کن..
این مثال شاید مفهومی درس نباشه اما منطق کاری و بهت میرسونه...
موفق باشید


سلام دوست گرامی
خیلی ممنون از راهنمایی تون
یعنی با انتخاب هر رکورد، در یک بخش جدا امکان ویرایش هر یک از فیلدها رو برای کاربر فراهم کنیم؟
با تشکر و سپاس