Comment Envoyer de Gros Fichier Du Client Vers le Serveur en Utilisant WCF?
Comment Envoyer de Gros Fichier Du Client Vers le Serveur en Utilisant WCF en C#? Ci-dessous le code de configuration.
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="HttpStreaming_IStreamingSample"
maxReceivedMessageSize="67108864"
transferMode="Streamed">
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://localhost:4127/StreamingSample.svc"
binding="basicHttpBinding"
bindingConfiguration="HttpStreaming_IStreamingSample"
contract="StreamingSample.IStreamingSample"
name="HttpStreaming_IStreamingSample" />
</client>
</system.serviceModel>
OK,c'est la config du client. Veuillez également vous montrer la configuration du serveur, et le contrat de service (qu'est-ce que votre méthode de ressembler à ça que vous l'appelez?)
OriginalL'auteur Charan | 2009-10-05
Vous devez vous connecter pour publier un commentaire.
Vous devez vérifier streaming, Dimitri l'a déjà souligné.
Afin d'être en mesure d'envoyer de gros fichiers comme un flux à votre service, vous aurez besoin de:
Stream
comme son paramètre d'entréetransferMode=StreamedRequest
Donc, tout d'abord, vous avez besoin d'une méthode dans votre contrat de service:
Alors vous avez besoin d'une configuration de liaison:
et un point de terminaison de service sur votre service en utilisant que la configuration de liaison:
et puis, dans votre client, vous devez ouvrir par exemple un filestream et envoyer que de la méthode de service sans la fermer.
Espère que ça aide!
Marc
cela sonne comme quelque chose avec votre config n'est pas d'accord - pouvez-vous le poste client et le serveur config que vous avez maintenant dans votre questions originales? Juste le <système.serviceModel> sections. Merci!
<basicHttpBinding> <binding name="HttpStreaming" maxReceivedMessageSize="67108864" transferMode="Tampon"> </liaison> </basicHttpBinding> <service de nom="WCFFileStreamingDemo.StreamingSample" paramètre behaviorconfiguration="WCFFileStreamingDemo.StreamingSampleBehavior"> <endpoint address="" liaison="basicHttpBinding" bindingName="HttpStreaming" contrat="WCFFileStreamingDemo.IStreamingSample"> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contrat="IMetadataExchange"/> </service>
salut Marc, le ci-dessus est la config de code
j'ai ajouté config code en question
OriginalL'auteur marc_s
Vous pouvez prendre un coup d'oeil à WCF Streaming fonctionnalité.
OriginalL'auteur Dzmitry Huba
En plus de l'augmentation readerQuota paramètres (mentionné ci-dessus), j'ai eu aussi le maxRequestLength à l'intérieur de la httpRuntime attribut.
OriginalL'auteur odyth