Pubblicazione servizio WCFWCF Service Publishing

Pubblicazione servizio Windows Communication Foundation (WCF) consente di dall'ambiente di sviluppo iniziale fornito da Host servizio WCF e Client di prova WCF per effettiva distribuzione dell'applicazione in un ambiente di produzione a scopo di test.Windows Communication Foundation (WCF) Service Publishing assists you in progressing from the early development environment provided by WCF Service Host and WCF Test Client to actually deploying the application to a production environment for testing purposes. Prima si esegue il commit a un piano di distribuzione finale, è possibile usare pubblicazione servizio Windows Communication Foundation (WCF) per verificare che il servizio WCF eseguito correttamente e sia pronto per la pubblicazione.Before you commit to a final deployment plan, you can use Windows Communication Foundation (WCF) Service Publishing to verify that your WCF service performs correctly and is ready to be published. È inoltre possibile distribuire le librerie di servizio WCF in diverse posizioni di destinazione per il test.You can also choose to deploy your WCF service libraries to various target locations for testing.

Servizi supportati e posizioni di destinazioneSupported Services and Target Locations

Pubblicazione servizio WCF supporta la pubblicazione di servizi WCF creati dal set di modelli di libreria del servizio WCF e i relativi modelli di elementi corrispondenti, che includono i seguenti:WCF Service Publishing supports publishing WCF services created from the set of WCF service library templates, and their corresponding item templates, which include the following:

  • Modello della libreria di servizi WCF con modello di elemento.WCF Service Library template with item template.

  • Libreria di servizi di diffusione.Syndication Service Library.

È possibile trovare questi modelli di servizio scegliendo File -> nuovo progetto -> Visual Basic o Visual c# -> WCF.You can find these service templates by choosing File -> New Project -> Visual Basic or Visual C# -> WCF. Per altri modelli WCF in questa posizione, inclusi applicazione del servizio del flusso di lavoro WCF e applicazione di servizio WCF, è possibile pubblicare utilizzando pubblicazione per le applicazioni web a un solo clic.For other WCF templates in this location (including WCF Workflow Service Application and WCF Service Application) you can publish using One-Click publishing for web applications.

È possibile pubblicare il servizio nelle posizioni di destinazione seguenti.The service can be published to the following target locations.

  • IIS locale.Local IIS.

  • File system.File System.

  • Sito FTP.FTP Site.

Uso di Pubblicazione servizio WCFUsing WCF Service Publishing

Per distribuire un'implementazione del servizio, eseguire la procedura seguente:Perform the following steps to deploy a service implementation:

  1. Aprire Visual Studio con privilegi elevati (fare doppio clic sul file eseguibile e utilizzare "Esegui come amministratore" per avviare il programma).Open Visual Studio with elevated privilege ( right-click the executable and use "Run as Administrator" to launch it). Se si utilizza IIS 7.0 o versioni successive, verificare di aver installato il componente "Metabase IIS 6 Configuration compatibilità IIS e" che utilizza "' o disattivare le funzionalità di Windows" nel Pannello di controllo.If you are using IIS 7.0 or later, ensure that you have installed the "IIS Metabase and IIS6 Configuration Compatibility" component using "'Turn Windows features on or off" in Control Panel.

  2. Aprire un progetto di servizio, selezionare compilare->pubblica <nome progetto > dal menu principale, o il pulsante destro del mouse sul progetto in Esplorae fare clic su pubblica.Open a service project, select Build->Publish <Project Name> from the main menu, or right-click the project in Solution Explorer and click Publish.

  3. Il pubblica verrà visualizzata la finestra.The Publish window appears. Fare clic su di ... .Click the . per specificare la posizione di destinazione in cui distribuire il servizio.button to specify the target location that the service should be deployed to. È possibile scegliere di distribuire l'applicazione IIS locale, File System o sito FTP.You can select to deploy the application to local IIS, File System, or FTP Site. Se distribuire l'applicazione IIS locale, è possibile selezionare il sito Web e creare l'applicazione web, fare clic il Crea nuova applicazione Web in alto nell'angolo destro.If deploying the application to local IIS, you can select your website and create your web application under it, by clicking the Create New Web Application icon at the top right corner.

  4. Dopo aver fatto clic pubblica nella finestra principale di Visual Studio distribuisce l'applicazione nel percorso di destinazione specificato e copia i file Web. config, con estensione svc e assembly nella directory di destinazione.After you click Publish in the main window, Visual Studio deploys the application to the specified target location and copies the Web.config, .svc, and assembly files to the target directory. .. Il nome dell'estensione svc sarà "ProjectName.ServiceName.svc".The name of .svc will be "ProjectName.ServiceName.svc". Al termine della pubblicazione il servizio, è possibile trovare un DBCS nella finestra Output di Visual Studio, che presenta un aspetto simile a "Connessione a un collegamento ipertestuale"http://localhost/WebApplicationFolderName" http://localhost/WebApplicationFolderName ...".After the service is published successfully, you can find a hotlink in the Visual Studio Output window, which looks similar to "Connecting to HYPERLINK "http://localhost/WebApplicationFolderName" http://localhost/WebApplicationFolderName ...". Premere CTRL e fare clic sul collegamento per aprire una pagina del browser in Visual Studio per visualizzare la struttura di directory del servizio.You can press CTRL and click the link to open a browser page inside Visual Studio to view the service directory structure.

    Se non è possibile collegarsi al sito, è possibile che il browser di directory non sia abilitato in IIS.If you cannot browse to the site, it may because directory browser is not enabled in IIS. Seguire i suggerimenti nella sezione "Possibili operazioni" per abilitare la funzionalità.Please follow the tips in the "Things you can try" section to enable it. In alternativa, è possibile digitare direttamente"HYPERLINK"http://localhost/WebApplicationFolderName" http://localhost/WebApplicationFolderName/ProjectName.ServiceName.svc" per visualizzare la pagina del servizio.Alternatively, you can directly type" HYPERLINK "http://localhost/WebApplicationFolderName" http://localhost/WebApplicationFolderName/ProjectName.ServiceName.svc" to view your service page.

È possibile utilizzare pubblica per specificare se si desidera copiare l'assembly, configurazione e il file con estensione svc per tutti i servizi definiti nel progetto nel percorso di destinazione e sovrascrivere i file esistenti nella destinazione.You can use Publish to specify if you want to copy the assembly, configuration, and .svc file for all services defined in the project to the target location, and overwrite existing files at the destination.

Se si sceglie di distribuire l'applicazione nel sito Web IIS locale, è possibile rilevare errori correlati all'installazione di IIS.If you choose to deploy your application to local IIS, you may encounter errors related to IIS setup. Verificare che IIS sia installato in modo corretto.Please ensure that IIS is installed properly. È possibile digitare "HYPERLINK"http://localhost" http://localhost" nel browser e verificare se la pagina predefinita IIS verrà visualizzati.You can type " HYPERLINK "http://localhost" http://localhost" in your browser and check whether the IIS default page is showing up. In alcuni casi, i problemi possono anche essere causati da una registrazione errata ASP.NET o WCF in IIS.In some cases, the issues may also be caused by ASP.NET or WCF improper registration in IIS. È possibile aprire il prompt dei comandi di Visual Studio ed eseguire il comando "aspnet_regiis.exe - ir" per risolvere i problemi di registrazione ASP.NET o eseguire il comando "ServiceModelReg.exe-ia" per correggere problemi di registrazione di WCF.You can open the Visual Studio Command Prompt and run the command "aspnet_regiis.exe -ir" to fix ASP.NET registration issues, or run command "ServiceModelReg.exe –ia" to fix WCF registration issues.

File generati per la pubblicazioneFiles Generated for Publishing

Prima di una libreria di servizi WCF possa essere ospitata sul Web, i file seguenti vengono generati dallo strumento: file di assembly, file Web. config e file con estensione svc.Before a WCF service library can be Web-hosted, the following files are generated by the tool: assembly files, Web.config file, and .svc file. Tutti i file vengono copiati nella posizione di destinazione specificata.All the files are copied to the target location. Il servizio viene quindi pubblicato.The service is then published.

File di assemblyAssembly files

Quando si pubblica un servizio WCF con questo strumento, il servizio viene innanzitutto compilato automaticamente e vengono generati i file di assembly nel progetto del servizio dopo la compilazione.When you publish a WCF service using this tool, the service is automatically built first and the assembly files are generated in the service project after building.

File SVC.SVC File

L'operazione di pubblicazione genera un file con estensione svc per ogni servizio WCF, se il file esista o meno, per garantire la validità di versione.The publishing operation generates a *.svc file for each WCF service, whether the file exists or not, to ensure version validity. Esistono due tipi diversi di file svc: uno per la libreria di servizi WCF e libreria di servizi di diffusione e un'altra per sequenziale e la libreria del servizio del flusso di lavoro macchina a stati.There are two different kinds of svc files: one for WCF Service Library and Syndication Service Library, and another one for Sequential and State Machine Workflow Service Library. Generato *file con estensione svc viene copiato nella cartella radice nella posizione di destinazione.The generated *.svc file is copied to the root folder in the target location.

File Web.configWeb.config File

Ogni volta che un progetto di servizio viene pubblicato in una posizione di destinazione specifica, viene creato un file Web.config.Each time a service project is published to a specific target location, a Web.config file is created.

Il file Web. config generato include sezioni Web utili per l'hosting Web e il contenuto dell'app. config per la libreria di servizi WCF con le modifiche seguenti:The generated Web.config file includes Web sections that are useful for Web hosting, and the content of App.config for the WCF service library with the following changes:

  • L'indirizzo di base è escluso.The base address is excluded.

  • Le impostazioni nell'elemento <diagnostics> vengono escluse per mantenere le impostazioni di traccia della piattaforma di destinazione.Settings in the <diagnostics> element are excluded to preserve the tracing settings of the target platform.

Pubblicazione di servizi WCF con associazioni non HTTP a IISPublishing WCF services with non-HTTP Bindings to IIS

Se si usa IIS7.0 o versione successiva, è possibile pubblicare servizi WCF con associazioni non HTTP a IIS.If you are using IIS7.0 or later, you can publish WCF services with non-HTTP bindings to IIS. È necessario tuttavia eseguire alcune configurazioni preliminari.You need to do some pre-configurations. Per ulteriori informazioni, vedere gli argomenti in Hosting nel servizio Attivazione processo Windows.For more information, please see the topics at Hosting in Windows Process Activation Service.

SicurezzaSecurity

Per la pubblicazione su un sito Web IIS locale sono necessari i privilegi di amministratore, poiché IIS deve essere eseguito con un account di questo tipo.Publishing to local IIS requires administrator privilege, because IIS requires running in Administrator account. Se un utente senza privilegi di amministratore apre pubblicazione servizio WCF, IIS non è disponibile come un percorso di destinazione.If a user without administrator privilege opens WCF Service Publishing, IIS is not available as a target location. La pubblicazione in File System o sito FTP funziona senza privilegio di amministratore.Publishing to File System, or FTP Site works without administrator privilege.

Vedere ancheSee Also

Modelli di Visual Studio WCFWCF Visual Studio Templates
Host del servizio WCF (WcfSvcHost.exe)WCF Service Host (WcfSvcHost.exe)
Client di prova WCF (WcfTestClient.exe)WCF Test Client (WcfTestClient.exe)