PDA

View Full Version : مشکل با AJAX



maxpayn2
چهارشنبه 10 بهمن 1386, 15:52 عصر
سلام
من در Master Page در UPdate Panel چند تا GridView دارم با یک تایمر که هر 10 دقیقه tick میزنه ، و در هر بار tick زدن GridView ها DitaBind میشن ، توی ContentPlaceHolder هم چند تا تکست باکس و ... دارم با یک دکمه ، وقتی روی دکمه کلیک میکنم این خطا رو میده :
http://i28.tinypic.com/t85dtf.jpg

mahdi_farhani
چهارشنبه 10 بهمن 1386, 15:57 عصر
یا Session داری ، یا Response.write و یه چیزی شبیه به اینها که با عث میشه این خطا داده بهش .

maxpayn2
چهارشنبه 10 بهمن 1386, 16:12 عصر
Response.Write که ندارم ، ولی Session دارم ، مشکلش چیه ؟

mahdi_farhani
چهارشنبه 10 بهمن 1386, 16:21 عصر
مشکلش اینه که نمیتونی داخل تو UpdatePanel یه Session تعریف کن و مقدار دهیش کنی ولی میتونی از Session بخونی .
البته اینهایی که من گفتم ، اشکالاتی بود که برای من پیش اومده بود و با از این دو مورد بوده . شاید مشکل شما از جایی دیگه باشه ، ولی بد نیست اینها رو تست کنی ، Session وردار ببین درست میشه ، اگر درست شد باید یه فکر دیگه برای ساختار کدت کنی.

maxpayn2
چهارشنبه 10 بهمن 1386, 16:29 عصر
2 تا Session دارم ، یکیش هنگام Page_Load مقدار دهی میشه که البته به این گیر نمیده چون مشکل زمانیه که رو دکمه کلیک میکنم ، یکی دیگه هم هنگام کلیک به عنوان یکی از پارامتر های Stored Prosedure استفاده میشه یعنی مقدارش خونده میشه و اصلا بهش مقدار داده نمیشه

hamedgh
چهارشنبه 10 بهمن 1386, 17:01 عصر
سرچ می کردی بد نبود !
پست پنجم به همین خطا اختصاص داره
http://barnamenevis.org/forum/showthread.php?t=91104

maxpayn2
چهارشنبه 10 بهمن 1386, 17:20 عصر
هیچ کدوم از اون کارهایی رو که تو پست 5 گفته بودی دلیل این خطا هست رو انجام ندادم پس راه حلی برای من نبود

hamedgh
چهارشنبه 10 بهمن 1386, 18:50 عصر
مطمئنی کامل خوندی !
من گفتم این یک باگ است !
شما چی را خواندی!
راه حلش را هم را گفتم


خطای Sys.WebForms.PageRequestManagerParserErrorExceptio n چیست و چگونه از ان دوری کنیم ؟؟؟
اگر شما از Microsoft ASP.NET AJAX UpdatePanel به احتما ل زیاد با این مشکل بر می خورید
متن کامل خطا به شرح زیر است
کد:
---------------------------
Microsoft Internet Explorer
---------------------------
Sys.WebForms.PageRequestManagerParserErrorExceptio n: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.
در حالت کلی این خطا ان قدر هم بد نیست
شاید ....
چون به نظر می اید به خاطر خطای برنامه نویسی که در زیر مثال ان امده است
باشد

1- نوشتن Response.Write(): یا Response filters و استفاده از HttpModules
و یا server trace فعال باشد و Server.Transfer
برای دوری از خطا عدم استفاده از موارد بالا می باشد

حال اگر از هیچ کدام از این ها استفاده نکردیم و باز هم این خطا پیش امد

این باگ ورژن 1 اجاکس است که مهندسان مایکروسافت قول بر طرف کردن
ان را در نمونه های بعدی دادند
کجا بیشتر این خطا به دور از انتظار ما رخ می دهد؟؟؟؟
وقتی که از کنترل های داینامیک استفاده می کنیم
مثل یک Button درسطر های گرید ویو که بطور داینامیک ساخته می شود از عوامل شایع این
خطا می باشد
راه حل چیست ؟؟؟؟؟؟؟

راه حل موقتی اگر Role Provider استفاده می کنید
این را به ان اضافه کنید cacheRolesInCookie="false"
و این را به صفحاتی که updatepanel استفاده می کنیم اضافه می کنیم
EventValidation="false"
مشکل حل می شو د

maxpayn2
شنبه 13 بهمن 1386, 08:28 صبح
ممنون ، شما اول عوامل پیش اومدن این خطا رو گفتین و راه حل هاشو ، بعد هم فرمودید اگه هیچ کدوم از این کار ها رو نکردم باز هم ممکن پیش بیاد و یک راه حل موقتی بیان کردین ، ولی تو اون راه حل هم گفتین اگه از Role Provider استفاده میکنید ، که من این کار رو هم نکردم