IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Communication Foundation .NET Discussion :

Dépassement du quotas maximal pour la longueur du tableau


Sujet :

Windows Communication Foundation .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut Dépassement du quotas maximal pour la longueur du tableau
    Bonjour tout le monde

    Après plusieurs jours (2 semaines même...) de recherche, je me résigne à faire appel à vos services.
    J'ai visité des dizaines de sujets (français/anglais), toutes les solutions au problème de taille n'ont pas eu d'effet sur mon projet...

    J'explique mon problème.
    J'utilise un service WCF qui contient plusieurs méthodes, un service Windows pour IIS, et une application utilisant le service WCF. Toutes mes méthodes fonctionnent sauf une, une méthode permettant d'ajouter un document dans la base de données à l'aide d'un tableau de Byte (les documents a envoyer seront en moyenne de 3 mo).
    J'ai donc bien modifié les valeurs (maxDepth, maxStringContentLength, maxArrayLength, maxBytesPerRead, maxNameTableCharCount, maxBufferSize, maxBufferPoolSize, maxReceivedMessageSize, dans le doute j'ai tout modifié à 2147483647 sur ces valeurs) dans le web.config du WCF, le app.config du service Windows et de l'application cliente, dans le fichier "config file" du WCF Test Client. Egalement dans les fichiers configuration.svcinfo et configuration91.svcinfo des références de service (dans le service Windows et l'application cliente) en gros partout mais rien y fait....

    D'ailleurs je pense avoir un problème également à ce niveau là (et ça ne m'étonnerais pas que ça soit liée au problème de départ) car quand je fais "Mise à jour de la référence de service" les valeurs dans les app.config/web.config se ré-initialisent et ne prennent pas en compte les valeurs de la référence de service... Ce qui fait que je doit modifier manuellement tout le temps.

    J'ai même rajouté ceci dans le app.config du service Windows pour être sur que la taille ne soit pas un problème mais en vain...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <system.web>
        <httpRuntime maxRequestLength="3276800" />
      </system.web>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <security>
          <requestFiltering>
            <requestLimits maxAllowedContentLength="3276800" />
          </requestFiltering>
        </security>
    Si vous voulez le codes de mes fichiers de config pour y voir plus clair, je vous les montrerais

    Je ne sais vraiment plus quoi faire, si quelqu'un trouve la solution je lui en serais éternellement reconnaissant et lui enverrais une bière par chronopost

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Je reviens vers vous.
    J'ai réussis à faire passer de gros fichiers à travers mon web service en utilisant netTcpBinding à la place de basicHttpBinding (ou autre)

    En espérant que ça aide d'autres personnes.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par MaximeLeroy Voir le message
    Je reviens vers vous.
    J'ai réussis à faire passer de gros fichiers à travers mon web service en utilisant netTcpBinding à la place de basicHttpBinding (ou autre)
    Sauf qu'on ne sait toujours pas pourquoi ça ne marche pas avec les modifications que tu as faites en utilisant le binding basicHttpBinding.

    Tiens voici un article que j'ai tiré d'un de mes flux RSS qui pourrait peut-être t'aider (je n'ai pas encore tout lu )

  4. #4
    Membre très actif
    Homme Profil pro
    Developpeur
    Inscrit en
    Décembre 2011
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Developpeur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 111
    Par défaut WCF envoie des fichiers
    Augmente ces valeurs au niveau du client :
    maxArrayLength, maxBytesPerRead, maxNameTableCharCount, maxBufferSize, maxBufferPoolSize, maxReceivedMessageSize, dans le doute j'ai tout modifié à 2147483647 sur ces valeurs) dans le web.config du WCF, le app.config

  5. #5
    Membre très actif
    Homme Profil pro
    Developpeur
    Inscrit en
    Décembre 2011
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Developpeur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 111
    Par défaut app.config
    voci le fichier de configuration que tu dois avoir pour le client!:
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
    <system.serviceModel>
    <bindings>
    <basicHttpBinding>
    <binding name="BasicHttpBinding_IService1" maxBufferSize="500000000"
    maxReceivedMessageSize="500000000" />
    </basicHttpBinding>
    </bindings>
    <client>
    <endpoint address="http://localhost:8733/Design_Time_Addresses/Send_Image/Sending"
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService1"
    contract="ServiceReference.IService1" name="BasicHttpBinding_IService1" />
    </client>
    </system.serviceModel>
    </configuration>

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Merci tout le monde pour ces réponses.

    Hlama : Ce n'était pas une question de valeurs trop petites (étant donné qu'un fichier de 20 ko ne passait même pas)


    Je n'ai pas trouvé la solution pour wsHttpBinding et basicHttpBinding, enfin je n'ai pas cherché plus longtemps car j'avais déjà perdu assez de temps comme cela , passer par netTcpBinding marche très bien et me suffit

    Bonne fin de journée à tous et bonne continuation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul du flot maximal pour un graphe contenant des capacités sur les sommets
    Par lisenette dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 10/03/2014, 15h41
  2. [Maxime] pour le 26/07/2006
    Par Médiat dans le forum Politique
    Réponses: 10
    Dernier message: 07/09/2006, 23h32
  3. [Maxime] pour le 17/07/2006
    Par Médiat dans le forum La taverne du Club : Humour et divers
    Réponses: 3
    Dernier message: 17/07/2006, 14h06
  4. [Maxime] Pour le 11/07/2006
    Par Médiat dans le forum La taverne du Club : Humour et divers
    Réponses: 9
    Dernier message: 11/07/2006, 11h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo