Question

Je travaille sur la rédaction des spécifications BDD pour un large éventail d'infrastructures de services WCF Je suis en train d'écrire. J'ai remarqué que chaque spécification j'écris qui implique un appel à ServiceHost.Open (), cette ligne prend un bon 2 - 6 secondes pour exécuter (le temps ne cesse de croître que j'ajouter de plus en plus de spécifications). J'ai remarqué que lorsque cette méthode est appelée, un Win32Exception est jeté:

Win32Exception occurred
Message: The specified domain either does not exist or could not be contacted.
Stack Trace: at System.ServiceModel.UpnEndpointIdentity.GetUpnFromDownlevelName(String downlevelName)
NativeErrorCode: 1355
ErrorCode: -2147467259

La configuration ServiceModel est la suivante:

<system.serviceModel>
  <services>
    <service name="TestServices.Calculator" behaviorConfiguration="default">
      <endpoint
        name="calculator"
        address=""
        binding="wsHttpBinding"
        contract="TestServiceContracts.ICalculator" />
      <endpoint
        address="mex"
        binding="mexHttpBinding"
        contract="IMetadataExchange" />
      <host>
        <baseAddresses>
          <add baseAddress="http://localhost/calculator" />
        </baseAddresses>
      </host>
    </service>
  </services>

  <behaviors>
    <serviceBehaviors>
      <behavior name="default" >
        <serviceMetadata httpGetEnabled="true" />
      </behavior>
    </serviceBehaviors>
  </behaviors>
</system.serviceModel>

Note: J'ai configuré http.sys et ajouté http: // +: 80 / calculatrice / comme une exclusion de l'espace de noms http, de sorte que ne fait pas partie du problème.

Cette erreur est plus grave sur un système Windows 7 Édition Intégrale. Sur un système Vista Édition Intégrale, il ne semble pas causer autant d'un coup de performance, mais ServiceHost.Open () est la plus grande partie du temps passé dans l'exécution. Je ne comprends pas pourquoi il est un problème du tout quand sont localhost ... Je l'URL de l'interface me attends de réalimentation pour être le plus rapide de tous.

Était-ce utile?

La solution

Le problème est pas avec localhost vs nom dns ... il est lié à la WCF appeler

scroll top