Condividi tramite


Attivazione basata sulla configurazione in IIS e WAS

In genere, quando si ospita un servizio Windows Communication Foundation (WCF) in Internet Information Services (IIS) o nel servizio Attivazione processo Windows (WAS), è necessario fornire un file con estensione svc. Il file con estensione svc contiene il nome del servizio e una factory di host del servizio personalizzata facoltativa. Quest'ulteriore file comporta un sovraccarico ai fini della gestibilità. Con la funzionalità di attivazione basata sulla configurazione non è più necessario disporre di un file con estensione svc e quindi tale sovraccarico viene evitato.

Attivazione basata sulla configurazione

L'attivazione basata sulla configurazione acquisisce i metadati posizionati nel file con estensione svc e li sposta nel file Web.config. Nell'elemento <serviceHostingEnvironment> si trova un elemento <serviceActivations>. Nell'elemento <serviceActivations> si trovano uno o più elementi <add>, uno per ogni servizio ospitato. L'elemento <add> contiene attributi che consentono di impostare il relativo indirizzo per il servizio e il tipo di servizio o una factory di host del servizio. Nell'esempio di codice di configurazione riportato di seguito viene illustrato come utilizzare questa sezione.

Ee358764.note(it-it,VS.100).gifNota:
Ogni elemento <add> deve specificare un servizio o un attributo della factory. È consentita la specifica sia degli attributi del servizio che della factory.

    <serviceHostingEnvironment>
      <serviceActivations>
        <add relativeAddress="service.svc" service="Service" factory=”MyServiceHostFactory”/>
      </serviceActivations>
    </serviceHostingEnvironment>

Con questa situazione nel file Web.config è possibile posizionare il codice sorgente del servizio nella directory App_Code dell'applicazione o un assembly compilato nella directory bin dell'applicazione.

Ee358764.note(it-it,VS.100).gifNota:
  • È necessario impostare l'attributo relativeAddress su un indirizzo relativo quale “<sottodirectory>/service.svc” o “~/<sottodirectory/service.svc”.

  • Se si registra un indirizzo relativo che non dispone di un'estensione nota associata a WCF, viene generata un'eccezione di configurazione.

  • L'indirizzo specificato è relativo alla radice dell'applicazione virtuale.

  • A causa del modello gerarchico della configurazione, gli indirizzi relativi registrati a livello del computer e del sito vengono ereditati dalle applicazioni virtuali.

  • Le registrazioni in un file di configurazione hanno priorità rispetto alle impostazioni in un file con estensione svc, xamlx, xoml o di un altro tipo.

  • Qualsiasi simbolo '\' (barra rovesciata) in un URI inviato a IIS/WAS viene convertito in modo automatico in un simbolo '/' (barra). Se viene aggiunto un indirizzo relativo che contiene un simbolo '\' e viene inviato a IIS un URI che utilizza l'indirizzo relativo, la barra rovesciata viene convertita in una barra normale e IIS non è in grado di associarla all'indirizzo relativo. IIS invia informazioni di traccia a indicare che non è stata rilevata alcuna corrispondenza.

Vedere anche

Riferimento

ServiceActivations

Concetti

Servizi host

Altre risorse

Hosting di servizi flusso di lavoro
<serviceHostingEnvironment>