Pergunta

Em um aplicativo ASP.NET Web, eu tenho uma página com um painel de atualização. Neste updatepanel, o usuário pode clicar em um ícone para adicionar ou remover controles para um repetidor.

Eu coloquei um ponto de interrupção no Page.Load do updatepanel e verificou o HttpContext.Current.Request.ContentLength cada vez que o updatepanel é usado. O pedido aumenta de tamanho cada vez que um pedido é enviado.

O engraçado é que ele ainda aumenta de tamanho quando o usuário remove os controles (para que a página se torna 'mais leve' de novo).

No final, isso me dá o seguinte erro:. Comprimento máximo solicitação

As soluções em torno da web sugerem aumentar a maximumRequestLength. Esta não é uma opção porque eu vou atingir o máximo de qualquer maneira.

Eu mesmo notei o pedido comprimento aumenta exponencialmente.

Alguém teve a mesma experiência?

Foi útil?

Solução

provavelmente você está constantemente adicionando atributos para seus controles. Algo como em Page_PreRender buttonSave.Attributes ( "onclick") + = "this.className = 'buttonhide';"

Outras dicas

Em cima da minha cabeça, parece que você poderia estar batendo uma questão ViewState aqui. Se o comprimento está a aumentar, independentemente do que está acontecendo, eu suspeito que itens estão sendo adicionados para o ViewState e não removida. O engraçado é que, muitas vezes você não precisa ViewState, mas as pessoas deixá-lo ligado.

Parece que você tem referência estática ao nível do pedido. Eu já vi isso antes em uma página de base. O que acontece é que nada pode ser descartado e ele só cresce e cresce.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top