2009-09-23 7 views
2

ASP.NET 웹 응용 프로그램에서 업데이트 패널이있는 페이지가 있습니다. 이 updatepanel에서 사용자는 아이콘을 클릭하여 제어기를 repeater에 추가하거나 제거 할 수 있습니다.updatepanel이 다시로드 될 때마다 요청 길이가 증가합니다.

updatepanel의 Page.Load에 중단 점을 넣고 updatepanel을 사용할 때마다 HttpContext.Current.Request.ContentLength를 확인했습니다. 요청은 요청이 전송 될 때마다 크기가 증가합니다.

재미있는 점은 사용자가 컨트롤을 제거 할 때 크기가 커지기 때문입니다 (따라서 페이지가 다시 '밝게'됩니다).

결국 최대 요청 길이라는 오류가 발생합니다.

웹 주위의 솔루션은 maximumRequestLength를 늘리라고 제안합니다. 어쨌든 최대치에 도달 할 것이기 때문에 이것은 선택 사항이 아닙니다.

요청 길이가 기하 급수적으로 늘어나는 것을 보았습니다.

누구나 동일한 경험을 했습니까?

답변

2

사용자는 컨트롤에 특성을 지속적으로 추가 할 것입니다. page_prerender와 같은 것 buttonSave.Attributes ("onclick") + = "this.className = 'buttonhide';"

+0

사실이 경우입니다. 부분 포스트 백이있을 때마다 우리 컨트롤 중 하나에 몇 가지 특성을 추가했습니다. 컨트롤이 계속 커지고 있습니다. 그리고 그것은 또한 viewstate를 더 크고 더 크게 만들었고, 요청을 더 크게 만들었습니다. – Peter

1

내 머리 꼭대기에서 뷰 상태 문제가 발생하는 것 같습니다. 어떤 일이 일어나고 있는지에 관계없이 길이가 늘어나고 있다면 항목이 ViewState에 추가되고 제거되지 않은 것 같습니다. 재미있는 점은 ViewState가 필요하지 않은 경우가 많지만 사람들이 켜 놓은 채로 두는 것입니다.

0

요청 수준에서 정적 참조가있는 것 같습니다. 전에 기본 페이지에서 본 적이 있습니다. 무슨 일이 일어날 지 아무것도 처분 될 수없고 단지 성장하고 커집니다.

관련 문제