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

Services Web Discussion :

WCF Upload fichier vers webservice


Sujet :

Services Web

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut WCF Upload fichier vers webservice
    Bonjour à tous,

    Je tente d'uploader un tableau d'octet sur mon WebService, quand je lance le webservice en local sur mon poste, il n'y a pas d'erreur et le fichier est bien uploadé. Mais lorsque je déploie le Webservice sur mon serveur cela ne fonctionne plus.

    J'ai un service uploadFichier avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        public interface IUploadFichier
        {
            [OperationContract]
            void DoWork();
     
            [OperationContract]
            void UploadFile(byte[] f, string fileName);
        }
    }
    Code : 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
        public class UploadFichier : IUploadFichier
        {
            public void DoWork()
            {
            }
            public void UploadFile(byte[] f, string fileName)
            {
     
                MemoryStream ms = new MemoryStream(f);
                FileStream fs = new FileStream(Path.Combine(System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath, "fichier.txt"), FileMode.Create);
                ms.WriteTo(fs);
                ms.Close();
                fs.Close();
                fs.Dispose();
            }
     
        }
    Puis l'appel sur mon client :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            private void button1_Click_2(object sender, EventArgs e)
            {
                ServiceReference3.UploadFichierClient client = new ServiceReference3.UploadFichierClient();
                FileInfo fInfo = new FileInfo(@"c:\Fichier.txt");
                FileStream fStream = new FileStream(@"c:\Fichier.txt", FileMode.Open, FileAccess.Read);
                BinaryReader br = new BinaryReader(fStream);
                long numBytes = fInfo.Length;
                byte[] data = br.ReadBytes((int)numBytes);
                br.Close();
                client.UploadFile(data, "Fichier.txt");
                fStream.Close();
                fStream.Dispose();
    }
    Le web.config :

    Code : 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
    35
    36
    37
    38
    39
    40
    41
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <appSettings>
        <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
      </appSettings>
      <system.web>
        <compilation debug="true" targetFramework="4.5" />
        <httpRuntime targetFramework="4.5"/>
      </system.web>
      <system.serviceModel>
        <behaviors>
          <serviceBehaviors>
            <behavior>
              <!-- Pour éviter la divulgation d'informations de métadonnées, définissez les valeurs ci-dessous sur false avant le déploiement -->
              <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
              <!-- Pour recevoir les détails de l'exception dans les erreurs à des fins de débogage, définissez la valeur ci-dessous sur true. Pour éviter la divulgation d'informations d'exception, définissez-la sur false avant le déploiement -->
              <serviceDebug includeExceptionDetailInFaults="false"/>
              <useRequestHeadersForMetadataAddress>
                <defaultPorts>
                  <add scheme="http" port="33915" />
                  <add scheme="https" port="33915" />
                </defaultPorts>
              </useRequestHeadersForMetadataAddress>
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <protocolMapping>
            <add binding="basicHttpsBinding" scheme="https" />
        </protocolMapping>    
        <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
      </system.serviceModel>
      <system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>
        <!--
            Pour parcourir le répertoire racine de l'application Web lors du débogage, définissez la valeur ci-dessous sur true.
            Définissez-la sur false avant le déploiement pour ne pas divulguer d'informations du dossier de l'application Web.
          -->
        <directoryBrowse enabled="true"/>
      </system.webServer>
     
    </configuration>

    Je pense que le problème vient du Web.config, mais après de multiples recherches je reste coincé.

    D'avance merci pour vos réponses.

  2. #2
    Futur Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Résolu : cela venait des droits de l'utilisateur IIS sur le dossier qui reçoit le fichier, l'utilisateur ne pouvait pas créée de fichier.

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

Discussions similaires

  1. Silverlight 3 WCF upload fichier
    Par memotech dans le forum Silverlight
    Réponses: 4
    Dernier message: 05/10/2010, 11h57
  2. upload fichiers vers ftp
    Par saphi dans le forum Langage
    Réponses: 2
    Dernier message: 13/09/2009, 02h10
  3. upload fichier vers serveur linux
    Par nadine7 dans le forum Import/Export
    Réponses: 1
    Dernier message: 14/08/2009, 13h03
  4. Upload fichier vers site WSS
    Par Pietr_Alekseievitch dans le forum SharePoint
    Réponses: 9
    Dernier message: 13/11/2008, 22h28
  5. Upload fichier vers Free ?
    Par Ramdoulou dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 09/08/2008, 19h51

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