JSON ASP.NET VALORES MUITO GRANDES
Boa tarde, tenho uma funcao chamada Via WebService com retorno Json . quando os dados retornados sao de um valor pequeno no grid. ela traz normalmente , porem quando ela traz mtos registros ela apresenta um erro . coloquei o script no web config para aumentar o tamanho maximo das req. json
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength=[Ô]2147483647[Ô]></jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>
mais mesmo assim o erro persiste, sera que alguem poderia me ajudar nisso .. nao sei mais oq fazer ja tentei de varias maneiras e nao esta funcionando .
Obrigado a todos desde ja
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength=[Ô]2147483647[Ô]></jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>
mais mesmo assim o erro persiste, sera que alguem poderia me ajudar nisso .. nao sei mais oq fazer ja tentei de varias maneiras e nao esta funcionando .
Obrigado a todos desde ja
Eu uso:
Mas se seu retorno está assim tão grande, melhor pensar em separar por partes. Uma requisição para dados básicos e trazer os demais conforme a demanda.
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength=[Ô]999999999[Ô]/>
</webServices>
</scripting>
</system.web.extensions>
Mas se seu retorno está assim tão grande, melhor pensar em separar por partes. Uma requisição para dados básicos e trazer os demais conforme a demanda.
Você não pode estar usando tanto assim pois a sua configuração seria de quase 2gb de dados.
Não sei se é o caso mas se você estiver usando um objeto do tipo JavaScriptSerializer ele não usa essa configuração do Web.config, você deve setar nele mesmo pela propriedade MaxJsonLength antes de chamar o Serialize dele
Não sei se é o caso mas se você estiver usando um objeto do tipo JavaScriptSerializer ele não usa essa configuração do Web.config, você deve setar nele mesmo pela propriedade MaxJsonLength antes de chamar o Serialize dele
O ERRO é : Error during serialization or deserialization using the JSON JavaScriptSerializer. The length of the string exceeds the value set on the maxJsonLength property.[Ô]
[WebMethod]
public List<Assistencia> GetAssistencia()
{
List<Assistencia> _return = null;
_return = new Assistencia().GetAssistencia();
return _return;
}
a chamada na Pagina ..
$.ajax({
type: [Ô]POST[Ô],
url: [Ô]. CAMINHO DO WEBSERVICE........wsAssistencia.asmx/GetAssistencia[Ô],
data: [Ô]{}[Ô],
contentType: [Ô]application/json;charset=utf-8[Ô],
dataType: [Ô]json[Ô],
success: function (msg) {
....
ESSA FUNCAO TRAZ O TOP 100 DE REGISTROS.. este retorno traz aprox. 519604 de retorno ..
engraçado é que quando eu chamo o webmethod diretamente pelo code behind ele funciona normalmente , porém quando eu faço a solicitação para o webservice ele apresenta este erro ... nao sei oq faço =/
[WebMethod]
public List<Assistencia> GetAssistencia()
{
List<Assistencia> _return = null;
_return = new Assistencia().GetAssistencia();
return _return;
}
a chamada na Pagina ..
$.ajax({
type: [Ô]POST[Ô],
url: [Ô]. CAMINHO DO WEBSERVICE........wsAssistencia.asmx/GetAssistencia[Ô],
data: [Ô]{}[Ô],
contentType: [Ô]application/json;charset=utf-8[Ô],
dataType: [Ô]json[Ô],
success: function (msg) {
....
ESSA FUNCAO TRAZ O TOP 100 DE REGISTROS.. este retorno traz aprox. 519604 de retorno ..
engraçado é que quando eu chamo o webmethod diretamente pelo code behind ele funciona normalmente , porém quando eu faço a solicitação para o webservice ele apresenta este erro ... nao sei oq faço =/
Se eu entendi, localmente funciona, mas quando você chama o webservice remoto, não. Isso?
Não..
Seguinte , tenho o projeto em Webforms, se eu faço a chamada diretamente pelo code behind do proprio Formulario ele retorna o valor ok certinho
se eu faço a chamada diretamente do form para o webservice ele da o erro do tamanho
Seguinte , tenho o projeto em Webforms, se eu faço a chamada diretamente pelo code behind do proprio Formulario ele retorna o valor ok certinho
se eu faço a chamada diretamente do form para o webservice ele da o erro do tamanho
Pois é, são três etapas, a chamada do webform para o webmethod, o code-behind executando o que quer que o webmethod faça e a serialização do retorno de volta para o webform. é nessa última que está o seu problema. Chegou a colocar a configuração com o valor alto que passei(99999999)?
Coloquei , mesmo assim ele da erro. a chamada esta sendo feita diretamente do form asp. nao existe mais nenhum código no code behind.!
a chamada esta na Url: ;;;;....wsCliente/GetClienteByNome(String Args) Ex.
ai oq acontece ..
No metodo antigo de trabalho quando eu chamava o WebMethod pelo code Behind ex: url: ListagemClientes.aspx/GetClienteByNome
Ele traz os dados normalmente sem problemas..
a partir do momento q eu passei estas funcoes para o web service e o chamei diretamente ele esta encontrando este erro e nao traz os valores !
a chamada esta na Url: ;;;;....wsCliente/GetClienteByNome(String Args) Ex.
ai oq acontece ..
No metodo antigo de trabalho quando eu chamava o WebMethod pelo code Behind ex: url: ListagemClientes.aspx/GetClienteByNome
Ele traz os dados normalmente sem problemas..
a partir do momento q eu passei estas funcoes para o web service e o chamei diretamente ele esta encontrando este erro e nao traz os valores !
Ah sim. Então essa configuração de tamanho do JSON deve estar no config do webservice e não da aplicação web.
ela está nos dois web config tanto da aplicação quanto no do web service .
Recompilei o projeto Removi do web.config do projeto principal .. e Dps adicionei de novo .recompilei novamente Excluir o web service e fiz de novo .!
Agora funciono .!
Obrigado a todos Vlw kerp mais uma vez.!!
Agora funciono .!
Obrigado a todos Vlw kerp mais uma vez.!!
Faça seu login para responder