2013-03-14 22 views
6

ストーリーで断続的な無効なビューステートエラー:選択の年のためのASP.NET Webページ

イムバケーションを表示しているチャートの開発(休暇」などを使用し年次休暇を、...)、ビジネスユニット、およびコンボボックスから部門はこれまでのところイム幸せは、それが働いている結果を聖霊降臨祭の...しかし、いくつかの時間後にこの部門間のスイッチがこれを行う場合、私はこの奇妙なエラーが出る... *

状態情報このページでは無効です。壊れている可能性があります。

[いいえ関連するソース行]


ので、私は、だから私は私のビューステートをチェックし、私は、エラーを発見していないダウンを少しスクロールし、この

[ViewStateException: Invalid viewstate. 
    Client IP: ::1 
    Port: 27968 
    Referer: http://localhost/HolidayTracker/Report/VacationChart.aspx 
    Path: /HolidayTracker/Report/VacationChart.aspx 
    User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0) 
    ViewState: .... 

を見つけました他の何か..

 private HtBusinessUnit selectedBU 
    { 
     get 
     { 
      return (HtBusinessUnit)ViewState["selectedBu"]; 

     } 
     set 
     { 
      ViewState["selectedBu"] = value; 
     } 
    } 
    private HtDepartment selectDep 
    { 
     get 
     { 
      return (HtDepartment)ViewState["selectedDep"]; 
     } 
     set 
     { 
      ViewState["selectedDep"] = value; 
     } 
    } 
    private string selectedYear 
    { 
     get 
     { 
      return ViewState["selectedYear"] != null ? ViewState["selectedYear"].ToString() : ""; 
     } 
     set 
     { 
      ViewState["selectedYear"] = value; 
     } 
    } 

ここにいます彼は、私はあなたが私にお気軽にもっと何かが必要

ここ
[ArgumentException: Invalid token for impersonation - it cannot be duplicated.] 
    System.Security.Principal.WindowsIdentity.CreateFromToken(IntPtr userToken) +3597947 
    System.Security.Principal.WindowsIdentity..ctor(SerializationInfo info) +187 
    System.Security.Principal.WindowsIdentity..ctor(SerializationInfo info, StreamingContext context) +51 

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
    System.RuntimeMethodHandle.SerializationInvoke(IRuntimeMethodInfo method, Object target, SerializationInfo info, StreamingContext& context) +0 
    System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context) +298 
    System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder) +45 
    System.Runtime.Serialization.ObjectManager.DoFixups() +230 
    System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) +137 
    System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) +186 
    System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream) +15 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +1873 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +334 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +420 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +432 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +420 
    System.Web.UI.ObjectStateFormatter.Deserialize(Stream inputStream) +139 

[ArgumentException: The serialized data is invalid.] 
    System.Web.UI.ObjectStateFormatter.Deserialize(Stream inputStream) +203 
    System.Web.UI.ObjectStateFormatter.Deserialize(String inputString, Purpose purpose) +481 
    System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter2.Deserialize(String serializedState, Purpose purpose) +8 
    System.Web.UI.Util.DeserializeWithAssert(IStateFormatter2 formatter, String serializedState, Purpose purpose) +40 
    System.Web.UI.HiddenFieldPageStatePersister.Load() +127 

[ViewStateException: Invalid viewstate. 
    Client IP: ::1 
    Port: 27795 
    Referer: http://localhost/HolidayTracker/Report/VacationChart.aspx 
    Path: /HolidayTracker/Report/VacationChart.aspx 
    User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0) 
    ViewState: /wEPDwULLTE2OTYyMjA5MzkPFgQeCnNlbGVjdGVkQnUy1p4BAAEAAAD/////AQAAAAAAAAAMAgAAAElIb2xpZGF5VHJhY2tlckRhdGEsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsDAMAAABVU3lzdGVtLkRhdGEuRW50aXR5LCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjc3YTVjNTYxOTM0ZTA4OQUBAAAAKEhvbGlkYXlUcmFja2VyLkRhdGEuTW9kZWwuSHRCdXNpbmVzc1VuaXQFAAAAD19CdXNpbmVzc1VuaXRJZAVfTmFtZQ9fT3JnYW5pc2F0aW9uSWQbRW50aXR5T2JqZWN0K19yZWxhdGlvbnNoaXBzF0VudGl0eU9iamVjdCtfZW50aXR5S2V5AAEABAQICDNTeXN0ZW0uRGF0YS5PYmplY3RzLkRhdGFDbGFzc2VzLlJlbGF0aW9uc2hpcE1hbmFnZXIDAAAAFVN5c3RlbS5EYXRhLkVudGl0eUtleQMAAAACAAAAFAAAAAYEAAAABUZTLUlTDgAAAAkFAAAACQYAAAAFBQAAADNTeXN0ZW0uRGF0YS5PYmplY3RzLkRhdGFDbGFzc2VzLlJlbGF0aW9uc2hpcE1hbmFnZXICAAAABl9vd25lcg5fcmVsYXRpb25zaGlwcwQDKEhvbGlkYXl...] 

[HttpException (0x80004005): The state information is invalid for this page and might be corrupted.] 
    System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +198 
    System.Web.UI.HiddenFieldPageStatePersister.Load() +266 
    System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +88 
    System.Web.UI.Page.LoadAllState() +36 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6704 
    System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +245 
    System.Web.UI.Page.ProcessRequest() +72 
    System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21 
    System.Web.UI.Page.ProcessRequest(HttpContext context) +58 
    ASP.report_vacationchart_aspx.ProcessRequest(HttpContext context) in c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\holidaytracker\ad68c354\56d80455\App_Web_k5s5ajkf.1.cs:0 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +341 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69 

は私Global.asax.cs

namespace HolidayTracker { 
    public class Global : System.Web.HttpApplication { 

     void Application_Start(object sender, EventArgs e) { 
      // Code that runs on application startup 

     } 

     void Application_End(object sender, EventArgs e) { 
      // Code that runs on application shutdown 

     } 

     void Application_Error(object sender, EventArgs e) { 
      // Code that runs when an unhandled error occurs 

     } 

     void Session_Start(object sender, EventArgs e) { 
      // Code that runs when a new session is started 
      if (HttpContext.Current.User != null && HttpContext.Current.User is HtUser) 
      { 
       HtUser user = (HtUser)HttpContext.Current.User; 
       Session["UserId"] = user.UserId; 

       Session["User"] = user.LastName+" "+user.FirstName ; 


       if (user.HtDepartments.Any() && user.HtDepartments.SingleOrDefault().HtBusinessUnit != null) 
       { 
        int BusinessUnitId = user.HtDepartments.First().HtBusinessUnit.BusinessUnitId; 
        Session["BusinessUnnitId"] = BusinessUnitId; 
       } 


      } 
     } 

     void Session_End(object sender, EventArgs e) { 
      // Code that runs when a session ends. 
      // Note: The Session_End event is raised only when the sessionstate mode 
      // is set to InProc in the Web.config file. If session mode is set to StateServer 
      // or SQLServer, the event is not raised. 

      //if (Session["UserId"] == null) 
      //{ 
      // Response.ClearContent(); 
      // Response.Write("Not agine"); 
      // Response.End(); 
      //} 
      //else 
      //{ 
      // Response.Write(Session["UserId"].ToString()); 
      //} 
     } 

     protected void WindowsAuthentication_OnAuthenticate(Object source, WindowsAuthenticationEventArgs e) 
     { 
      if (Request.Cookies.Get(Constants.AUTHORIZATION_COOKIE_NAME) != null) 
       return; 

      String strUserIdentity; 
      FormsAuthenticationTicket formsAuthTicket; 
      HttpCookie httpCook; 
      String strEncryptedTicket; 
      AdLookup adLookup = new AdLookup(); 

      strUserIdentity = e.Identity.Name; 

      bool loggedIn = false; 
      String email = null; 
      String role = null; 

      email = strUserIdentity; 
      HtUser userInfo = null; 
      if (email != null && email != "") 
      { 
       userInfo = HtUser.GetByLogin(e.Identity, email); 

       if (userInfo != null && userInfo.UserName.Length > 0) 
       { 
        loggedIn = true; 
        role = HtUser.GetUserRoleString(userInfo); 
       } 
       //Checks if user is in domain 
       else 
       { 
        userInfo = adLookup.GetAdUserByUsername(HtUser.getUserNameFromDomainString(email)); 
        if (userInfo != null && userInfo.UserName.Length > 0) 
        { 
         loggedIn = true; 
         role = UserRoles.User; 
        } 
       } 
      } 
      //} 

      if (loggedIn) 
      { 
       formsAuthTicket = new FormsAuthenticationTicket(1, email, DateTime.Now, 
                   DateTime.Now.AddMinutes(60), false, role); 
       strEncryptedTicket = FormsAuthentication.Encrypt(formsAuthTicket); 
       httpCook = new HttpCookie(Constants.AUTHORIZATION_COOKIE_NAME, strEncryptedTicket); 
       Response.Cookies.Add(httpCook); 
       HttpContext.Current.User = userInfo; 
      } 
      else 
      { 
       HttpContext.Current.User = null; 
      } 
     } 

    } 
} 

あるメッセージエラー!ヘルプと高速答え

+0

部門間の切り替え時にコントロールツリーからコントロールを動的に追加/削除しますか? – jadarnel27

+0

@ jadarnel27私はチャートをフィルタリングするだけで、コントロールを追加したり削除したりしません。 –

+0

アプリケーションプールに統合モードまたはクラシックモードを使用していますか? – polybios

答えて

0

ウーため

おかげで私は大きなそれがないものを見るが、私は、あなたは非常に自分のラッドコンボボックスその道からの値を使用するだけで、「正常な」ソリューションを使用してビューステートを交換することをお勧めします簡単ですが、確かにこれはあなたのための本当の解決策ではありません問題の原因私は本当に奇妙な私はここでエラーが表示されませんが、私のためにそれは私のすべてのようです。更新されたコードをいくつかのコメントとともに送り返してください。 !あなたが持っている問題は、お気軽にお尋ね場合

¨

PS:あなたは風場合はソリューションは私に連絡して与えます!

+0

seams to workあなたに大変感謝します!!!!!!私は本当の解決策を傷つけたら私はあなたに連絡します。私はあなたにメールを送るでしょうが、運賃はうまくいきます! :D –

+0

実際の解決策ではないが、np ^^ – Mingebag

関連する問題