Come usare la Pubblicazione guidata servizio WCF BizTalk per pubblicare metadati di servizio per un indirizzo di ricezione WCF per il routing basato sul contenuto
La Pubblicazione guidata servizio WCF BizTalk viene usata per creare un servizio WCF per la pubblicazione dei metadati di servizio per gli indirizzi di ricezione WCF esistenti per il routing basato sul contenuto.
Nota
Prima di eseguire la Pubblicazione guidata servizio WCF BizTalk, è necessario generare i progetti BizTalk. I progetti BizTalk devono includere gli schemi per la pubblicazione come servizi WCF. Prima di pubblicare i metadati del servizio per gli adapter WCF, è necessario creare anche i percorsi di ricezione WCF usando la console di amministrazione di BizTalk Server o lo strumento da riga di comando BTSTask incluso in BizTalk Server. Per altre informazioni su come creare un percorso di ricezione WCF, vedere l'argomento appropriato per ogni adapter WCF negli adapter WCF.
Per pubblicare i metadati di servizio per un indirizzo di ricezione WCF esistente per il routing basato su contenuto
Fare clic sul pulsante Start, scegliere Tutti i programmi, BizTalk Server, quindi fare clic su Pubblicazione guidata servizio WCF BizTalk.
Nota
Per creare e pubblicare i metadati di servizio WCF per gli schemi e le orchestrazioni BizTalk, usare la Pubblicazione guidata servizio WCF BizTalk. Per pubblicare le orchestrazioni e gli schemi come servizi Web con l'adapter SOAP, utilizzare la Pubblicazione guidata servizi Web BizTalk.
Nella pagina Pubblicazione guidata servizio WCF BizTalk fare clic su Avanti.
Nella pagina Tipo di servizio WCF selezionare l'opzione Endpoint solo Metdata (MEX) per pubblicare i servizi WCF per fornire i metadati del servizio per il percorso di ricezione WCF che verrà selezionato nel passaggio successivo.
Nell'elenco a discesa Pubblica metadati per la posizione di ricezione della pagina Tipo di servizio WCF selezionare un percorso di ricezione WCF per cui pubblicare i metadati del servizio e quindi fare clic su Avanti.
Nella pagina Crea servizio WCF selezionare Pubblica schemi come servizio WCF e quindi fare clic su Avanti.
Nella pagina Servizio WCF definire i contratti di servizio WCF per cui pubblicare i metadati del servizio. Usare l'albero nella finestra di dialogo Descrizione del servizio Web per aggiungere, rimuovere, rinominare e modificare i nodi di descrizione del servizio Web per i servizi WCF da pubblicare. Nella finestra di dialogo Informazioni vengono fornite informazioni sul nodo selezionato e vengono visualizzati eventuali errori nel nodo corrente o in eventuali sottonodi:
Il nodo radice dell'albero (Descrizione servizio Web) descrive i contratti di servizio WCF da pubblicare. Per il nome della directory virtuale viene usato il nodo principale come nome predefinito. È possibile modificare il nome della descrizione del servizio Web per i servizi WCF da pubblicare selezionando Rinomina descrizione del servizio Web.
Il nodo del metodo Web Operation1 del nodo del servizio predefinito Service1, visualizzato per impostazione predefinita nella finestra di dialogo Descrizione del servizio Web , può essere usato per un percorso di ricezione di richiesta-risposta. Se è stato selezionato un percorso di ricezione WCF unidirezionale per questo contratto di servizio, fare clic con il pulsante destro del mouse sul nodo del metodo Web predefinito, scegliere Elimina metodo Web, quindi creare un metodo Web unidirezionale come indicato di seguito: Fare clic con il pulsante destro del mouse sul nodo del servizio predefinito, scegliere Aggiungi metodo Web e quindi fare clic su Unidirezionale.
Per aggiungere un nuovo servizio WCF, fare clic con il pulsante destro del mouse sul nome della descrizione del servizio Web e quindi scegliere Aggiungi servizio Web. Verrà creato un nuovo servizio WCF senza operazioni WCF. Per modificare il nome del servizio WCF, fare clic con il pulsante destro del mouse sul nodo servizio WCF, scegliere Rinomina servizio Web e quindi premere INVIO per accettare il nuovo nome.
Per aggiungere una nuova operazione WCF, fare clic con il pulsante destro del mouse sul nodo del servizio WCF, scegliere Aggiungi metodo Web e quindi fare clic su Unidirezionale (per un'operazione WCF di richiesta) o Su richiesta-risposta (per un'operazione WCF di richiesta-risposta).
Per impostare i tipi di schema di richiesta e risposta, fare clic con il pulsante destro del mouse sul nodo Richiesta o Risposta e quindi scegliere Seleziona tipo di schema. Nella finestra di dialogo Tipo messaggio richiesta digitare il nome dell'assembly contenente lo schema del documento nella casella di testo File assembly BizTalk oppure fare clic su Sfoglia per cercare l'assembly. Nella visualizzazione elenco Tipi di schema disponibili viene visualizzato ogni elemento radice dello schema. Selezionare un nodo principale da aggiungere come tipo di schema richiesta o risposta.
Nota
Se il file di assembly BizTalk è stato installato nella Global Assembly Cache (GAC), assicurarsi che l'assembly nella GAC sia stato aggiornato con l'assembly selezionato nella finestra di dialogo Tipo di messaggio di richiesta . Se la GAC ha lo stesso nome completo, la Pubblicazione guidata servizio WCF BizTalk userà il file di assembly disponibile nella GAC, invece del file selezionato.
È possibile rinominare i nodi Richiesta e Risposta senza influire sul codice generato. Dopo aver definito gli schemi, è possibile rinominare gli elementi parziali, modificando in questo modo il nome del parametro dell'operazione WCF. Le modifiche sono visibili visualizzando i metadati per i servizi WCF da pubblicare.
Nota
Quando si rinomina uno dei nodi di descrizione del servizio Web, non è possibile usare spazi.
Fare clic su Avanti per continuare la procedura guidata.
Nella casella di testo Targetnamespace del servizio WCF della pagina Proprietà servizio WCF digitare uno spazio dei nomi di destinazione per i servizi WCF e quindi fare clic su Avanti.
Nella pagina Posizione del servizio WCF digitare il nome della directory Web in cui vengono generati i servizi WCF nella casella di testo Percorso . È possibile accettare il percorso predefinito (
http://localhost/<Web service description name>
), digitare un percorso per i servizi WCF nella casella di testo Percorso oppure fare clic su Sfoglia e selezionare una directory Web. Selezionare una o più delle seguenti opzioni:Sovrascrivi progetto esistente - Questa opzione è disponibile solo se la directory Web esiste già. È possibile eseguire pubblicazioni nello stesso percorso solo se si seleziona questa opzione. In caso contrario, è necessario immettere un percorso diverso per il progetto.
Consenti accesso anonimo al servizio WCF - Questa opzione consente di aggiungere l'accesso anonimo alla directory virtuale creata. Per impostazione predefinita, la directory virtuale eredita i privilegi di accesso dalla directory virtuale padre oppure dal sito Web se si tratta di una directory virtuale di livello superiore.
Al termine di questa pagina, fare clic su Avanti.
Nota
Il percorso del progetto può essere presente in un server diverso. Per pubblicare i servizi WCF in un server diverso, digitare il nome del progetto come
http://<servername>/<WCF service location>
.Nota
Il percorso del progetto può essere presente in un sito Web non predefinito. Quando si esegue la pubblicazione in un sito Web non predefinito, specificare il relativo numero di porta nell'URL, Ad esempio:
http://<servername>:8080/<WCF service location>
.Nota
Nel file BindingInfo.xml creato dalla procedura guidata nella cartella \App_Data\Temp dell'applicazione Web vengono usati i valori predefiniti per le pipeline. Il valore predefinito per la pipeline di ricezione è la pipeline Microsoft.BizTalk.DefaultPipelines.XMLReceive e il valore predefinito per la pipeline di trasmissione è la pipeline Microsoft.BizTalk.DefaultPipelines.PassThruTransmit .
Nella pagina Riepilogo servizio WCF esaminare le impostazioni per i servizi WCF.
Fare clic su Crea per creare i servizi WCF.
Fare clic su Fine per completare la Pubblicazione guidata servizio WCF BizTalk.
Per configurare l'applicazione Web per la pubblicazione dei metadati del servizio
Abilitare ASP.NET per l'applicazione Web creata dalla Pubblicazione guidata servizio WCF BizTalk. Per altre informazioni, vedere Abilitazione dei servizi Web.
Nota
Se si usa un'altra versione del sistema operativo Windows, è necessario aggiungere l'account dell'identità del pool di applicazioni al gruppo Amministratori BizTalk Server. Dopo avere aggiunto l'account appropriato al gruppo Amministratori BizTalk Server, è necessario riavviare il servizio IIS per rendere effettiva l'impostazione.
Aprire un prompt dei comandi, passare alla cartella in cui sono stati creati i servizi WCF in %SystemDrive%\InetPub\ tramite la Pubblicazione guidata servizio WCF BizTalk, quindi aprire il file Web.config usando il Blocco note.
Nel Blocco note aggiungere la riga seguente all'interno dell'elemento <system.web> :
<trust level="Full" originUrl="" />
Nota
Questa impostazione è facoltativa e concede all'applicazione ASP.NET che ospita il servizio WCF pubblicato l'accesso alle risorse soggette alle impostazioni di sicurezza del sistema operativo. Questo è il livello di attendibilità richiesto da WCF nei casi in cui Windows SharePoint Services è installato ed eseguito nello stesso computer dei servizi WCF pubblicati.
Nella casella Indirizzo di Internet Explorer digitare l'URL per il servizio WCF usando il formato http:// host[:p ort]/apppath/wcfservicename.svc per testare il servizio WCF pubblicato. I parametri sono descritti nella tabella riportata di seguito.
Parametro Valore host[:p ort] Nome del computer in cui è stato distribuito il servizio WCF. Questo nome di server può essere seguito da due punti (:) e dal numero di porta. apppath Nome della directory virtuale e percorso dell'applicazione Web. nomeserviziowcf.svc Nome del file del servizio WCF con estensione svc. Per evitare la diffusione accidentale di metadati del servizio potenzialmente riservati, si consiglia di disabilitare questo comportamento nell'ambiente di produzione effettuando le seguenti operazioni:
Nel Blocco note aprire il file Web.config nella cartella in cui è stato creato il servizio WCF in %SystemDrive%\InetPub\ tramite la Pubblicazione guidata servizio WCF BizTalk.
Nel Blocco note impostare l'attributo httpGetEnabled nell'elemento <serviceMetadata> su false come riga seguente:
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false" />
Vedere anche
Come usare la Pubblicazione guidata servizio WCF BizTalk per pubblicare gli schemi come servizi WCF
Procedura dettagliata: Pubblicazione di servizi WCF con l'adapter WCF-NetMsmq