2016-10-18 2 views
0

이 코드의 의미를 이해할 수 없습니다. 왜 우리는 viewstate를 사용하고 어떤 목적으로 여기 viewstate를 사용해야합니까. 나는이 지역에 처음 온 사람이다. 각 코드 행을 이해하는 데 도움을주십시오.ViewState 속성 코드를 이해해야합니다.

public int ParentPageVSValue 
    { 
    get 
    { 
     if (ViewState["_ParentPageVSValue"] != null) 
      return int.Parse(ViewState["_ParentPageVSValue"].ToString()); 
     else 
      return 0; 
    } 
    set 
    { 
     ViewState["_ParentPageVSValue"] = value; 
    } 
} 
+0

ViewState는 포스트 백 간의 데이터를 보존하는 ASP.Net 기능으로 상태 관리에 대한 자세한 내용은 여기를 참조하십시오. https://msdn.microsoft.com/en-us/library/75x4ha6s.aspx – Esko

+0

@ user3510330 내 대답을 확인하고 알려주십시오 뭔가 명확하지 않습니다. – mybirthname

답변

0

뷰 상태는 포스트 백 중에 보존해야하는 값을 저장할 수 있습니다.

뷰 상태는 특정 ASP.NET 페이지에 대한 상태 정보를 제공합니다. 둘 이상의 페이지에 대한 정보를 사용해야하거나 웹 사이트 방문을 통해 정보를 유지해야하는 경우.

자세한 내용은 this 게시물을 참조하십시오.

2

상태의 삶에 대한 상태보기는 간단합니다. 상태가 지속되면 의 포스트 백이 있습니다. (ASP.NET 웹 페이지의 경우, 상태는 컨트롤 계층 구조를 구성하는 컨트롤의 재산 값입니다.)

I 조언 당신은 전체 기사 Understanding ASP.NET View State

viewstate가 속성을 읽을 수

각 컨트롤 그것의 ViewState 속성의 변화 상태를 추가함으로써 달성된다 자신의 상태를 저장하는 책임을진다. ViewState 속성은 System.Web.UI.Control 클래스에 정의되어 있으며 은 모든 ASP.NET 서버 컨트롤에서이 속성을 사용할 수 있음을 의미합니다. ASP.NET 서버 컨트롤의 간단한 속성을 검사 할 경우 속성을 읽고 뷰 상태에 직접 쓰는 것을 볼 수 있습니다. 예를 들어 하이퍼 링크 웹 컨트롤의 NavigateUrl 속성을 생각해보십시오. 이 속성의 코드는 너무 다음과 같습니다

public string NavigateUrl 
{ 
    get 
    { 
     string text = (string) ViewState["NavigateUrl"]; 
     if (text != null) 
      return text; 
     else 
      return string.Empty; 
    } 
    set 
    { 
     ViewState["NavigateUrl"] = value; 
    } 
} 

, 그것은 페이지의 HTML에 이름 __VIEWSTATE 숨겨진 필드로 추가하는 방법 뷰 상태를 찾고 : View State

디코딩하는 방법 뷰 상태가 찾고 :

View State decoded

그래서 귀하의 경우에, 당신이 홍보를 만들 operty는 뷰 상태 (HTML의 숨겨진 필드)에 int 값을 저장합니다. 그런 다음 동일한 숨겨진 필드에서 검색 할 수 있습니다.