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

Silverlight Discussion :

Chargement d'image dans une base de donnée


Sujet :

Silverlight

  1. #1
    Membre régulier
    Homme Profil pro
    Programmeur PHP
    Inscrit en
    Août 2009
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Israël

    Informations professionnelles :
    Activité : Programmeur PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 244
    Points : 114
    Points
    114
    Par défaut Chargement d'image dans une base de donnée
    Bonjour,
    Je souhaite charger (upload) une image depuis mon application Silverlight vers une base de donnée (SQL express).
    Lorsque je clique sur "save" Fiddler me donne (entre autre) l'erreur suivante:

    Dépassement du quota maximal pour la longueur de tableau (16384) lors de la lecture des données XML. Ce quota peut être augmenté en modifiant la propriété MaxArrayLength sur l'objet XmlDictionaryReaderQuotas utilisé lors de la création du lecteur XML
    Le probleme c'est que je ne vois la balise MaxArrayLenght, ni dans le web config de l'application silverlight, ni dans celui du serveur Web.

    Par contre, dans la projet aspx qui herge mon application, la balise y figure je l'ai donc augmenté, au lieu de 1634, j'ai mis 2000000.
    Cela ne m'a pas aidé, l'erreur est exactement la meme.

    voici le web.config du serveur:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <connectionStrings>
        <add name="ArtYoniDBEntities" connectionString="metadata=res://*/ArtYoniModel.csdl|res://*/ArtYoniModel.ssdl|res://*/ArtYoniModel.msl;provider=System.Data.SqlClient;provider connection string='Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;E:\divers_a_classer\Visual Studio 2010\Projects\Mon_Site\WebStore\WebService\App_Data\ArtYoniDB.mdf&quot;;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True'" providerName="System.Data.EntityClient" />
      </connectionStrings>
        <system.serviceModel>
            <behaviors>
                <serviceBehaviors>
                    <behavior name="">
                        <serviceMetadata httpGetEnabled="true" />
                        <serviceDebug includeExceptionDetailInFaults="true" />
                    </behavior>
                </serviceBehaviors>
            </behaviors>
            <!--<bindings>
                <customBinding>
                    <binding name="WebService.ArtYoniWebService.customBinding0">
                        <binaryMessageEncoding />
                        <httpTransport />
                    </binding>
                </customBinding>
            </bindings>-->
            <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
                multipleSiteBindingsEnabled="true" />
            <services>
              <service name="BLServer.BackEnd">
                <endpoint address="" binding="basicHttpBinding" contract="BLServer.IBLServer" />
                <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
              </service>
            </services>
        </system.serviceModel>
    </configuration>

    Et voici celui de l'application:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <configuration>
        <system.serviceModel>
            <bindings>
                <basicHttpBinding>
                    <binding name="BasicHttpBinding_IBLServer" maxBufferSize="2147483647"
                        maxReceivedMessageSize="2147483647">
                      <!--<readerQuotas maxArrayLength="2000000" maxStringContentLength="2000000"/>-->
                        <security mode="None" />
                    </binding>
                </basicHttpBinding>
            </bindings>
            <client>
                <endpoint address="http://localhost:1133/ArtYoniWebService.svc"
                    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IBLServer"
                    contract="ArtYoniServiceReference.IBLServer" name="BasicHttpBinding_IBLServer" />
            </client>
        </system.serviceModel>
    </configuration>

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Pourquoi la ligne est en commentaire, dans le fichier de configuration côté client ?

    <!--<readerQuotas maxArrayLength="2000000" maxStringContentLength="2000000"/>-->

  3. #3
    Membre régulier
    Homme Profil pro
    Programmeur PHP
    Inscrit en
    Août 2009
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Israël

    Informations professionnelles :
    Activité : Programmeur PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 244
    Points : 114
    Points
    114
    Par défaut
    VS me souligne en bleu la balise de readerQuotas, donc je l'ai mis en commentaire.
    Cette balise n'apparaissait pas avant, elle n'a pas été généré automatiquement, c'est moi qui l'ai ajouté pour essayer de regler le probleme.

  4. #4
    Membre régulier
    Homme Profil pro
    Programmeur PHP
    Inscrit en
    Août 2009
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Israël

    Informations professionnelles :
    Activité : Programmeur PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 244
    Points : 114
    Points
    114
    Par défaut
    Il semblerai que mon probleme soit resolu.
    J'ai changé le web.config du serveurWeb.
    Pour ceux que ca interesseraient, voici la nouvelle configuration:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    <configuration>
      <connectionStrings>
        <add name="ArtYoniDBEntities" connectionString="metadata=res://*/ArtYoniModel.csdl|res://*/ArtYoniModel.ssdl|res://*/ArtYoniModel.msl;provider=System.Data.SqlClient;provider connection string='Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;E:\divers_a_classer\Visual Studio 2010\Projects\Mon_Site\WebStore\WebService\App_Data\ArtYoniDB.mdf&quot;;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True'" providerName="System.Data.EntityClient" />
      </connectionStrings>
        <system.serviceModel>
            <behaviors>
                <serviceBehaviors>
                    <behavior name="">
                        <serviceMetadata httpGetEnabled="true" />
                        <serviceDebug includeExceptionDetailInFaults="true" />
                    </behavior>
                </serviceBehaviors>
            </behaviors>
            <bindings>
              <basicHttpBinding>
                    <binding name="ArtYoniWebBinding" maxBufferSize="334217728"
                    maxBufferPoolSize="52428800" maxReceivedMessageSize="334217728" 
                             transferMode="Streamed">
                      <readerQuotas maxArrayLength="100000000"/>
                    </binding>
                </basicHttpBinding>
            </bindings>
            <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
                multipleSiteBindingsEnabled="true" />
            <services>
              <service name="BLServer.BackEnd">
                <endpoint bindingConfiguration="ArtYoniWebBinding" 
                          address="" binding="basicHttpBinding" contract="BLServer.IBLServer" />
                <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
              </service>
            </services>
        </system.serviceModel>
    </configuration>

    Seulement maintenant j'ai l'impression que l'enregistrement ne se fait pas dans la base de donnée.

  5. #5
    Membre régulier
    Homme Profil pro
    Programmeur PHP
    Inscrit en
    Août 2009
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Israël

    Informations professionnelles :
    Activité : Programmeur PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 244
    Points : 114
    Points
    114
    Par défaut
    Encore une petite question....
    Est il normal que je ne puisse pas charger une image deplus de 60Kb?
    Ca me fait un tout petit truc. C'est nul pour une application sur Silverlight, non?

Discussions similaires

  1. intégrer un fichier image dans une base de donnée?
    Par Lody dans le forum Requêtes
    Réponses: 9
    Dernier message: 16/03/2006, 19h08
  2. Comment stocker des images dans une base de données ?
    Par [Silk] dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/07/2005, 11h29
  3. inserer des images dans une base de données
    Par alilou04 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/06/2004, 18h54
  4. les images dans une base de données
    Par houhou dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/06/2004, 14h27
  5. Réponses: 21
    Dernier message: 29/04/2004, 15h45

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