PDA

View Full Version : ایجاد grid توسط ajax



grobech
دوشنبه 08 فروردین 1390, 08:56 صبح
سلام دوستان
من میخواستم صفحه خودم grid رو توسط ajax ایجاد کنم من روش clint callback یا web method رو استفاده میکنم توی هر دو روش باید grid رو به وسیله کد html دستی ایجاد کنیم حالا میخواستم ببینم روش دیگه ای هم وجود داره یا نه ؟ که دیگه مجبور به تولید کد html نباشیم

alonemm
دوشنبه 08 فروردین 1390, 09:35 صبح
اگه میخواید خودتون کدها HTML رو نسازید از خود کنترل گرید دات نت استفاده کنید ( به همراه شی UpdatePanel ).


موفق باشید.

grobech
دوشنبه 08 فروردین 1390, 23:54 عصر
متشکرم از استاد بزرگم
البته برای استفاده از update panel خودش حرف و حدیث داره که خیلی از دوستان گفتن حداقل grid رو توی update panel نندازین سرعت load صفحه میاد پایین حالا که ما روی grid فیلتر هم میزاریم چه بدتر اگر کسی روش دیگه ای کار کرده ما رو بی نصیب نزاره متشکرم

raziee
سه شنبه 09 فروردین 1390, 01:01 صبح
متشکرم از استاد بزرگم
البته برای استفاده از update panel خودش حرف و حدیث داره که خیلی از دوستان گفتن حداقل grid رو توی update panel نندازین سرعت load صفحه میاد پایین حالا که ما روی grid فیلتر هم میزاریم چه بدتر اگر کسی روش دیگه ای کار کرده ما رو بی نصیب نزاره متشکرم

دوست من این لینک (http://barnamenevis.org/showthread.php?194414-%D9%85%D8%B4%DA%A9%D9%84%D8%A7%D8%AA-%D9%82%D8%B1%D8%A7%D8%B1%D8%AF%D8%A7%D8%AF%D9%86-grid-view-%D8%AF%D8%B1-update-panel) رو مطالعه کنید .

اما راه حل:
راه حل های زیادی هست، بستگی به شما داره که کدوم راه رو انتخاب میکنید

استفاده از فایل های XML و قالب بندی در کلاینت.
رندر کردن یک WebUserControl و فرستادن اون به کلاینت
استفاده از WebService و JQuery
استفاده از WebService و ScriptManager و AJAX
....

grobech
سه شنبه 09 فروردین 1390, 10:14 صبح
متشکرم از توجه شما دوست عزیز
لطفا در رابطه با دو گزینه اول یک توضیحی بدید اگر هم قبلا بحث شده لطفا بگید کدوم پست ها؟
دو گزینه آخر که نمیشه باید کد html خودمون تولید کنیم درست گفتم؟

raziee
سه شنبه 09 فروردین 1390, 22:55 عصر
لطفا در رابطه با دو گزینه اول یک توضیحی بدید اگر هم قبلا بحث شده لطفا بگید کدوم پست ها؟
http://dotnetslackers.com/articles/ajax/Using-jQuery-with-ASP-NET.aspx
http://barnamenevis.org/showthread.php?249838-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%DA%A9%D9%86%DB%8C%D8%AF-%DB%8C%DA%A9-%D9%86%D9%85%D9%88%D9%86%D9%87-%DB%8C-%DA%A9%D9%88%DA%86%DB%8C%DA%A9%DB%8C-%D8%A7%D8%B2-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%DB%8C-JQuery-%D8%AF%D8%B1-ASP.NET&p=1120670#post1120670

دو گزینه آخر که نمیشه باید کد html خودمون تولید کنیم درست گفتم؟
به لینک اولی که دادم نگاه کنید.(لینک های مشابه هم در پایین همون صفحه آورده شده)

alonemm
چهارشنبه 10 فروردین 1390, 09:53 صبح
باسلام:
در این مورد که سرعت بارگزاری گرید در آبدیت پنل پایین هست :
اگر شما از پیجینگ دستی در SQL استفاده کنید این مورد حل میشه.
(در این روش شما فقط به اندازه PageSize گریدتون رکورد از داخل پایگاه داده واکشی میکنید)

موفق باشید.

grobech
چهارشنبه 10 فروردین 1390, 16:02 عصر
متشکرم
منظورتون از paging دستس چی است؟
اگر من grid رو به sqldatasorce وصل کنم و از خاصیت paging خود grid استفاده کنم قبلش همه رکوردهای صفحات رو load میکنه بعد نشان ما میده منظورتون اینه؟

alonemm
پنج شنبه 11 فروردین 1390, 10:26 صبح
نه دوست من:
در این روش شما با اجرای یک کوئری به اندازه PageSize رکورد از پایگاه داده واکشی میکنید ( مثل در هر پیچ فقط 5 رکورد ).
کمی درباره این روش در سایت جستجو کنید.

در لینک زیر آموزش درباره این مطلب :
http://barnamenevis.org/showthread.php?199437-آموزش-Custom-Paging-amp-Sorting-در-Sql2005-همراه-با-نمونه-كد-براي-دانلود&highlight=

موفق باشید.

grobech
جمعه 12 فروردین 1390, 08:54 صبح
بزارید برگردیم سر سوال اول چند تا را حل پیشنهاد دادین



استفاده از فایل های XML و قالب بندی در کلاینت
استفاده از WebService و JQuery
استفاده از WebService و ScriptManager و AJAX

هر سه مورد باید کد html به صورت دستی نوشت گفتیم که از update panel نیز استفاده نکنیم بهتر
پس نتیجه میگیریم روش دیگه ای نیست (اینو گفتم تا تاپیک به نتیجه برسه) متشکرم

raziee
شنبه 13 فروردین 1390, 12:45 عصر
هر سه مورد باید کد html به صورت دستی نوشت گفتیم
شما میتونید یک UserControl رو رندر کنید و خروجی html رو به کلاینت بفرستید.
مثلا:
شما یک WebUserControl ایجاد کردید که وظیفه ی نمایش اطلاعات از دیتابیس رو بر عهدا داره و هر بار قرار هست 20 رکورد رو نمایش بده.
تصمیم میگیرید که این 20 رکورد به صورت AJAX نمایش داده بشه و PostBack ای اتفاق نیفته.

یک Property در این WebUserControl برای PageIndex قرار میدید و این پراپرتی رو در زمان لود شدن مقدار دهی میکنید.
بعد هم این کنترل رو رندر میکنید و خروجی HTML رو به کلاینت میفرستید.

grobech
شنبه 13 فروردین 1390, 21:13 عصر
واقعا از توجه شما دوست عزیز قدر دانی میکنم
اگر وقتش رو دارید یک مثال میزارید تا استفاده کنیم
متشکرم

raziee
شنبه 13 فروردین 1390, 21:51 عصر
واقعا از توجه شما دوست عزیز قدر دانی میکنم
اگر وقتش رو دارید یک مثال میزارید تا استفاده کنیم
متشکرم
در این لینک (http://barnamenevis.org/showthread.php?249838) یک نمونه هست. رندر کردن یک WebUserControl و ....