PDA

View Full Version : Validation of viewstate MAC failed



peyman13618
یک شنبه 23 فروردین 1388, 10:59 صبح
من یه سایت با asp.net و vb و بانک اکسس درست کردم . تو صفحه هایی که ورود اطلاعات دارم یا می خوام گرید بگیرم گاها به خطای زیر می رسم که با بک زدن و مجدد باز کردن همون صفحه باز نمی تونم صفحه رو ببینم مگر اینکه صفحه بسته بشه و مراحل login رو مجدد انجام بدم.

این خطا رو می ده:

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Web.HttpException: Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

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

abdonsd
دوشنبه 09 آذر 1388, 13:54 عصر
سلام

منم همین مشکل رو دارم لطفا یکی کمک کنه.
البته اگه کد زیر رو به web.cinfig اضافه کنیم:




<system.web>
<pages enableViewStateMac="false" />
</system.web>



، اون ارور بر طرف میشه اما ی ارور جدید میده به این شکل:
Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: Sections must only appear once per config file. See the help topic <location> for exceptions.

Source Error:...

abdonsd
دوشنبه 09 آذر 1388, 14:17 عصر
سلام
فهمیدم مشکل از کجاست
با اضافه کردن همون کد:

<system.web>
<pages enableViewStateMac="false" />
</system.web>

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

<pages ... وجود داره و نمیشه یه <page ... دیگه تعریف کرد و باید همون رو تغییر داد :
ی چیزی مثل این میشه:


<pages enableViewStateMac="false">
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3857AD464E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3857AD464E35"/>
</controls>
</pages>