Service WCF Nom & Liaison Nom
Scénario
J'ai deux Services WCF combinés dans une seule Application.Fichier de configuration.
Je ne peux pas obtenir la chose à exécuter (l'application compile mais ne parvient pas à l'initialisation des services).
Question
Je me demande si j'ai besoin de configurer le nom du service pour être le même que quelque chose d'autre qui est également définie comme la partie de l'ensemble de la fonction?
ERREUR
TypeInitializationException
{"Service" MurexUploadObjects.ResponseService' a zéro de l'application (hors infrastructure) de points de terminaison. Ce pourrait être parce que le fichier de configuration n'a été trouvé pour votre application, ou parce qu'aucun élément de service correspondant au service de nom peut être trouvé dans le fichier de configuration, ou parce qu'aucun des points de terminaison définis dans l'élément de service."}
CODE
<system.serviceModel>
<configuration>
<behaviors>
<serviceBehaviors>
<behavior name="Service1Bevhavior">
</behavior>
<behavior name="Service2Bevhavior">
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<netTcpBinding>
<binding name="tcpBloombergServiceEndPoint" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard" listenBacklog="10" maxBufferPoolSize="524288"
maxBufferSize="65536" maxConnections="10" maxReceivedMessageSize="65536">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:05:00"
enabled="true" />
<security mode="None">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
<message clientCredentialType="Windows" />
</security>
</binding>
<binding name="TransactedBinding">
<security mode="None" />
</binding>
</netTcpBinding>
</bindings>
<services>
<!--SERVICE ONE-->
<service name="INSERT NAME HERE">
<endpoint address="net.tcp://AP434190:8732/BloombergService/"
binding="netTcpBinding"
contract="BloomberPriceListenerService.IBloombergPriceListenerService"
bindingConfiguration="tcpBloombergServiceEndPoint"
name="tcpBloombergServiceEndPoint" />
</service>
<!--SERVICE TWO-->
<service name="INSERT NAME HERE">
<endpoint address="net.tcp://localhost:8735/private/MurexUploadObjects/ResponseService"
binding="netTcpBinding"
contract="MurexUploadObjects.IResponseService"
bindingConfiguration="TransactedBinding"
name="TransactedBinding"/>
</service>
</services>
</system.serviceModel>
</configuration>
Pour info vous pouvez définir explicitement l'affichage réel " nom " de ce service en utilisant le Nom de la propriété de la ServiceBehaviorAttribute sur la mise en œuvre des services. Voir george.tsiokos.com/posts/2007/3/13/wcf-service-name.html par exemple
OriginalL'auteur Goober | 2010-04-06
Vous devez vous connecter pour publier un commentaire.
Le nom de service doit être le nom complet de votre classe de service, y compris l'espace de noms, par exemple
Il ne peut pas être n'importe quoi - le nom de la classe de service est utilisé par
ServiceHost
de trouver la bonne configuration de service.OriginalL'auteur marc_s