2011-10-18 7 views
-3

Je crée un site Web en utilisant la base de données LINQ sur Visual Studio 2010 Je reçois cette erreur quand je fais de nombreuses requêtes de la base de données et à la base de donnéesL'URL est trop longue en cours d'exécution !!

la page contient la liste déroulante qui obtenir quelque chose de la base de données et à la postes à temps de retour pour obtenir des requêtes de la base de données et le lier à GridViews

après 3 requêtes de la base de données, il affiche ce message

« la longueur de la chaîne de requête pour cette demande dépasse la valeur maxQueryStringLength configurée. »

J'utilise Google chrome BTW!

+0

Auriez-vous d'utiliser AJAX? Pouvez-vous s'il vous plaît poster un code pertinent et l'erreur exacte complète plus la trace de la pile? –

+0

S'agit-il de WebForms? – SquidScareMe

Répondre

2

De http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/a33611c1-7cdf-4a40-880b-3309456406f0:

Please check the section in your config file: <httpRuntime maxRequestPathLength="260" maxQueryStringLength="2048" /> By default, the query string lengths was constrainted to 2048 characters. To allow longer or shorter query strings, modify the maxQueryStringLength attribute, please.

+1

je l'ai utilisé et cela fonctionne, THX – user1000778

+0

N'importe quand. Heureux d'avoir aidé. – SquidScareMe

0

Malheureusement, ne pas voir votre code ne peut pas vous dire comment réduire la longueur de cette chaîne de requête. Quelles informations passez-vous dans la chaîne de requête?

Voici an article qui tente de quantifier les seuils (il varie en combo OS/navigateur)

+0

La longueur de la chaîne de requête pour cette requête dépasse la valeur maxQueryStringLength configurée. Description: Une exception non gérée s'est produite lors de l'exécution de la demande Web en cours. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code. Détails d'exception: System.Web.HttpException: La longueur de la chaîne de requête pour cette demande dépasse la valeur maxQueryStringLength configurée. – user1000778

+0

Erreur de source: Une exception non gérée a été générée pendant l'exécution de la requête Web en cours. L'information concernant l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de pile d'exception ci-dessous – user1000778

+0

Trace de pile: [HttpException (0x80004005). La longueur de la chaîne de requête pour cette demande dépasse la valeur maxQueryStringLength configuré] Système . Web.HttpRequest.ValidateInputIfRequiredByConfig() 9016221 System.Web.ValidateRequestExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +35 System.Web.HttpApplication.ExecuteStep (étape IExecutionStep, Boolean & completedSynchronously) +184 – user1000778

0

Au lieu d'utiliser la méthode GET pour envoyer vos données au serveur utiliser la méthode POST.

Dans votre code html changer votre balise de formulaire à quelque chose comme ça

<form id="myForm" method="POST" action="..."> 

Ou si votre submiting le formulaire via javascript essayer quelque chose comme ça

var myForm = document.getElementById("myForm"); 
myForm.method = "POST"; 
myForm.submit(); 
+0

comment pourrais-je utiliser des méthodes Post? – user1000778

+0
+0

Après l'avoir fait comme ça. il utilise à nouveau l'URL – user1000778

Questions connexes