• 1397/10/03

استفاده از Ajax در RazorPage بخش مدیریت کاربران :

سلام استاد گرامی وقت شما بخیر

در بخش مدیریت کاربران اومدیم و لیست کاربران را در یک جدول نمایش دادیم که صفحه بندی هم داشت .

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

یکی از راه ها Ajax  هست که من در نت نتونستم منبع خوبی برای استفاده از Ajax در RazorPage ای که داریم پیدا کنم.

یه پیشنهادی که بهم شد این بود که از partialView استفاده کنم اما بازم چون دکمه های Next و ... با تگ a هست و ادرس دادیم میبینم که کل صفحه رفرش میشود.

 

چطوری میتونم این کار رو انجام بدم؟

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

 

 

تشکر از شما. 

  • 1397/10/03
  • ساعت 16:42

سلام 

بباید از Ajax استفاده کنید 

میتونید از w3schools یاد بگیرید 

بحث بسیار مفصلی هست 


  • 1397/10/04
  • ساعت 08:49

تشکر. 

کار با Ajax را خودتان هم در آموزش گفته اید. نمیدونم چرا من تست کردم لیست کاربران رو خالی میداد برای همین سوال را پرسیدم. اما الان باز همون کد رو تست کردم Json همه مقادیر را بهم داد.  :)
 

یک سوال : من تست کردم در RazorPage نمیتوانستم Json را صدا بزنم اما در کنترلر این کار قابل انجام بود. خود شما هم برای Ajax متد را در کنترلر Home نوشتین. درست متوجه شدم؟! در RazorPageها نمیتوانیم Json را برای برگرداندن یک جی سان فراخوانی کنیم آیا؟
ممنونم که وقت میزارید.


  • 1397/10/04
  • ساعت 09:15

در razor page با ajax میتونید json را دریافت کنید مگر handler در اون ایجاد کنید 


  • 1397/10/04
  • ساعت 14:38

ممنونم.

من با Ajax جدول را صفحه بندی کردم . اما یه مورد دارم اینکه Extension Method ای که برای تبدیل تاریخ به شمسی نوشیتم را در جی کوئری ای که  َپاسخ Ajax را پردازش میکند تا جدول را پر کند قابل فراخوانی نیست.

برای حل این مشکل یک متد برای تبدیل تاریخ اضافه کردم که با Ajax فراخوانی میشود و تاریخ را تبدیل میکند. اما ایا درست هست ؟

منظورم اینه که مثلا فرض کنید جدول 100 تا user را قرار است نمایش دهد، به ازای هر user یکبار این درخواست Ajax تبدیل تاریخ به شمسی فراخوانی میشود . این موضوع سرور را اذیت نمیکند؟

و اینکه مثلا 20 تا کاربر همزمان درسایت این کار را بکنند تعداد درخواست ها به سرور به شدت افزایش می یابد.



البته در این مورد خاص میتونیم با جاوااسکریپت تبدیل تاریخ را انجام بدهیم. 

اما راه دیگری نیست که از Extension Method ها بتوانیم در jquery استفاده کنیم ایا؟

 

استاد شما پیشنهادتون چیه؟


  • 1397/10/04
  • ساعت 15:30

بهتره اینطوزی نباشه 

از view model استفاده کنید و سمت سرور شمسی کنید و داخل view moddel قرار دهید به Ajax بدید 


  • 1397/10/05
  • ساعت 12:24

بله پیشنهاد خوبی هست . ممنون از شما.


logo-samandehi