Domanda

Ho un servizio WCF che vorrei ospitare in IIS 7.5. La mia configurazione: Il percorso fisico della cartella con il file .svc è: c: \ inetpub \ wwwroot \ smartsolution \ servizi \ servizi \ containermanagementservice.svc I miei binari sono in c: \ inetpub \ wwwroot \ smartsolution \ servizi \ bin e li ho anche copiati C: \ inetpub \ wwwroot \ smartsolution \ servizi \ servizi \ bin

Ho creato un'applicazione Web in IIS per entrambe le cartelle dei servizi.

Ecco il file di configurazione per l'endpoint WCF:

      <service behaviorConfiguration="MyNamespace.ContainerManagementServiceBehavior"
    name="MyNamespace.ContainerManagementService">
    <endpoint address="" binding="basicHttpBinding"
       name="ContainerManagementbasicHttpEndpoint" contract="MyNamespace.IContainer"/>                  
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
  </service>      
   <behaviors>      
    <behavior name="MyNamespace.ContainerManagementServiceBehavior">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
</behaviors>
.

Ecco il mio file .svc makrkup:

<%@ ServiceHost Language="C#" Debug="true" Service="MyNamespace.ContainerManagementService" CodeBehind="ContainerManagementService.svc.cs" %>
.

Quando provo a navigare su: http:// localhost / smartsolution / servizi / servizi / containermanagementservice .svc , viene visualizzato il seguente errore:

.

Errore del server in '/ SmartSolution / Servizi / Servizi' Applicazione. [ServiceActivationException: il servizio '/Smartsolution/services/services/containermanagementservice.svc' non può essere attivato a causa di un Eccezione durante la compilazione. Il Il messaggio di eccezione è: non è valido Applicazione Win32. (Eccezione da. HRESULT: 0x800700C1).] Non è un valido Applicazione Win32. (Eccezione da. HRESULT: 0x800700C1)

Come posso ottenere il servizio al lavoro. Grazie!

È stato utile?

Soluzione

Guardando le eccezioni, sembra che i tuoi assembly (nella cartella Bin) siano costruiti targeting X64 Plaform e ora sono implementati su macchina a 32 bit o pool di applicazioni configurati per l'applicazione è in esecuzione in modalità a 32 bit (abilita applicazioni a 32 bit="vero").Pertanto, il processo non è in grado di caricare i gruppi costruiti per la piattaforma X64 e fallisce con eccezione.

hth Amit

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top