ClientScriptManager.RegisterForEventValidation을 사용하여 ClientScriptManager.RegisterHiddenField와 함께 추가 할 숨겨진 필드와 값을 등록하려고합니다. 렌더링 이벤트 중에이 작업을 수행합니다. 오류는 발생하지 않지만 ASP.NET 2.0은 필드의 유효성을 검사하지 않습니다. 값을 변경하거나 Firefox 및 Firebug를 사용하여 클라이언트 측 전체 필드를 삭제할 수 있으며 ASP.NET은 오류가 발생하지 않도록해야합니다. 사용자 정의 페이지 클래스ClientScriptManager.RegisterForEventValidation with HiddenField
샘플 코드 :
protected override void Render(HtmlTextWriter writer)
{
ClientScript.RegisterHiddenField("stuff", "things");
ClientScript.RegisterForEventValidation("stuff", "things");
base.Render(writer);
}
숨겨진 필드가 페이지에 추가되지만 ASP.NET은 다시 게시에 필드 또는 값을 확인하지 않습니다. 내가 뭘 놓치고 있니?
이 문제를 해결해 주셔서 감사합니다. 이번에는 viewstate를 사용할 수 없습니다. 페이지 상태를 클라이언트에 보내는 대신 데이터베이스에 저장하기 때문에이 숨겨진 값은 페이지 상태의 GUID입니다. 이 기능을 보호하기 위해 가능한 모든 것을 다하고 있는지 확인하고있었습니다. –