Comment créer un client WCF sans paramètres dans le fichier de configuration?
Je viens de commencer à travailler sur WCF il y a un mois. S'il vous plaît pardonnez-moi si je demande quelque chose de déjà répondu. J'ai essayer de chercher en premier, mais rien trouvé.
J'ai lu cet article, WCF Transfert de Fichiers: Streaming & Chunking Canal Hébergés Dans IIS. Il fonctionne très bien. Maintenant, je souhaite l'intégrer côté client code pour faire partie de mon application, qui est une dll d'exécution à l'intérieur d'AutoCAD. Si je veux travailler avec un fichier de config, j'ai du modifier acad.exe.config qui je ne pense pas une bonne idée. Donc, je pense que si c'est possible, je veux déplacer tout le code dans le fichier de configuration de code.
Voici fichier de config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IService" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
messageEncoding="Mtom" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://10.1.13.15:88/WCFStreamUpload/service.svc/ep1"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IService"
contract="MGFileServerClient.IService"
name="BasicHttpBinding_IService" />
</client>
</system.serviceModel>
Pourriez-vous svp m'aider à faire ce changement?
source d'informationauteur weslleywang
Vous devez vous connecter pour publier un commentaire.
Vous pouvez faire toute la mise en place à partir de code, en supposant que vous n'avez pas besoin de la flexibilité de changer cela dans l'avenir.
Vous pouvez lire sur la configuration de l'ordinateur d'extrémité sur MSDN. Tout cela s'applique au serveur la configuration de l'ordinateur d'extrémité et bindingd s'appliquent au client en tant que bien, c'est juste que vous utilisez les classes différemment.
Fondamentalement, vous voulez faire quelque chose comme:
Évidemment, vous aurez probablement envie de configurer la liaison avec la sécurité, délais, etc la même chose que la config ci-dessus (vous pouvez lire sur le BasicHttpBinding sur MSDN), mais cela devrait vous aider à aller dans la bonne direction.
C'est totalement le code en fonction de la configuration et du code de travail. Vous n'avez pas besoin de n'importe quel fichier de configuration pour le client. Mais au moins, vous avez besoin d'un fichier de config il y a (peut être généré automatiquement, vous n'avez pas à penser à ce sujet). Tous les paramètres de configuration est faite ici dans le code.
Cherchez-vous à conserver votre configuration personnalisé et de référence au sein de votre application? Vous pouvez essayer cet article: La lecture de Configuration WCF à partir d'un Emplacement Personnalisé (En ce qui concerne la WCF)
Sinon, vous pouvez utiliser ConfigurationManager.OpenExeConfiguration.