Développer et déployer WCF Data Services
Cette rubrique fournit des informations sur le développement et le déploiement de Services de données WCF . Pour des informations générales sur Services de données WCF , consultez Mise en route de WCF Data Services et Vue d'ensemble de WCF Data Services.
Développement de WCF Data Services
Lorsque vous utilisez Services de données WCF pour créer un service de données qui prend en charge Protocole OData (Open Data) , vous devez exécuter les tâches de base suivantes dans le cadre du développement :
Définir le modèle de données
Services de données WCF prend en charge plusieurs fournisseurs de service de données qui vous permettent de définir un modèle basé sur des données provenant de plusieurs sources, dont des bases de données relationnelles et des types de données à liaison tardive. Pour plus d'informations, consultez Fournisseurs de services de données (WCF Data Services).
Créer le service de données
Le service de données le plus basique expose une classe qui hérite de la classe DataService, avec un type T qui est le nom qualifié par l'espace de noms du conteneur d'entités. Pour plus d'informations, consultez Définition de WCF Data Services.
Configurer le service de données
Par défaut, Services de données WCF désactive l'accès aux ressources exposées par un conteneur d'entités. L'interface DataServiceConfiguration vous permet de configurer l'accès aux ressources et opérations de service, de spécifier la version d'OData prise en charge et de définir d'autres comportements à l'échelle du service, tels que les comportements de traitement par lot ou le nombre maximal d'entités qui peuvent être retournées dans un flux de réponse unique. Pour plus d'informations, consultez Configuration du service de données (WCF Data Services).
Cette rubrique traite principalement du développement et du déploiement des services de données à l'aide de Visual Studio. Pour plus d'informations sur la flexibilité donnée par Services de données WCF pour exposer vos données en tant que flux OData , consultez Définition de WCF Data Services.
Choix d'un serveur Web de développement
Lorsque vous déployez un service WCF Data Service comme une application ASP.NET ou un site Web ASP.NET à l'aide de Visual Studio, vous avez le choix entre plusieurs serveurs Web sur lesquels exécuter le service de données pendant le développement. Les serveurs Web suivants s'intègrent à Visual Studio pour faciliter le test et le débogage de vos services de données sur l'ordinateur local.
Serveur IIS local
Lorsque vous créez un service de données qui est une application ASP.NET ou un site Web ASP.NET exécuté sur Internet Information Services (IIS), nous vous recommandons de développer et tester votre service de données à l'aide d'IIS sur l'ordinateur local. L'exécution du service de données sur IIS facilite le suivi des demandes HTTP pendant le débogage. Elle permet également de prédéfinir les droits requis par IIS pour accéder aux fichiers, aux bases de données et aux autres ressources requises par le service de données. Pour exécuter votre service de données sur IIS, vous devez vous assurer qu'IIS et Windows Communication Foundation (WCF) sont installés et configurés correctement et accorder aux comptes IIS l'accès au système de fichiers et aux bases de données. Pour plus d'informations, consultez Procédure : développer un WCF Data Service qui fonctionne sur IIS.
Remarque : Vous devez exécuter Visual Studio avec des droits d'administration afin que l'environnement de développement puisse configurer le serveur IIS local. Serveur de développement Visual Studio
Visual Studio inclut un serveur Web intégré, le serveur de développement Visual Studio qui est le serveur Web par défaut des projets ASP.NET. Ce serveur Web est conçu pour exécuter les projets ASP.NET sur l'ordinateur local pendant le développement. Le démarrage rapide de WCF Data Services explique comment créer un service de données qui s'exécute dans le serveur de développement Visual Studio.
Vous devez tenir compte des limitations suivantes lorsque vous utilisez le serveur de développement Visual Studio pour développer le service de données :
Ce serveur est uniquement accessible sur l'ordinateur local.
Ce serveur écoute sur localhost et sur un port spécifique, non sur le port 80, qui est le port par défaut des messages HTTP. Pour plus d'informations, consultez Web Servers in Visual Studio for ASP.NET Web Projects.
Ce serveur exécute le service de données dans le contexte de votre compte utilisateur actuel. Par exemple, si vous êtes un utilisateur avec un niveau d'administrateur, un service de données s'exécutant dans le serveur de développement Visual Studio aura des privilèges d'administrateur. Par conséquent, le service de données pourra accéder à des ressources pour lesquelles il ne possède pas de droits d'accès si déployé sur un serveur IIS.
Ce serveur n'inclut pas les fonctionnalités supplémentaires d'IIS, telles que l'authentification.
Il ne peut pas gérer les flux HTTP envoyés par défaut par le client Services de données WCF lors de l'accès à des volumes de données binaires importants à partir du service de données. Pour plus d'informations, consultez Fournisseurs de diffusion en continu (WCF Data Services).
Ce serveur a des difficultés à traiter le caractère « point » (.) dans une URL, même si ce caractère est pris en charge par Services de données WCF dans les valeurs clés.
Conseil : Même si vous pouvez utiliser le serveur de développement Visual Studio pour tester vos services de données pendant le développement, vous devez à nouveau les tester après leur déploiement sur un serveur Web qui exécute IIS. Environnement de développement Windows Azure
Windows Azure Tools pour Visual Studio inclut un ensemble intégré d'outils pour développer les services Windows Azure dans Visual Studio. Avec ces outils, vous pouvez développer un service de données pouvant être déployé sur Windows Azure, et vous pouvez le tester sur l'ordinateur local avant son déploiement. Utilisez ces outils si vous vous servez de Visual Studio pour développer un service de données qui s'exécute sur la plateforme Windows Azure. Vous pouvez télécharger Windows Azure Tools pour Visual Studio depuis le Centre de téléchargement Microsoft. Pour plus d'informations sur le sujet suivant le développement d'un service de données qui s'exécute sur Windows Azure, consultez la publication Déploiement d'un service OData Service dans Windows Azure.
Conseils de développement
Vous devez tenir compte de ce qui suit lorsque vous développez un service de données :
Définissez les conditions de sécurité de votre service de données si vous planifiez d'utiliser des utilisateurs authentifiés ou un accès restreint pour des utilisateurs spécifiques. Pour plus d'informations, consultez Sécurisation de WCF Data Services.
Un programme d'inspection HTTP peut être très utile pour le débogage d'un service de données, car il vous permet d'inspecter le contenu des messages de demande et de réponse. N'importe quel analyseur de paquets réseau en mesure d'afficher des paquets bruts peut être utilisé pour inspecter des demandes et des réponses HTTP à partir du service de données.
Lorsque vous déboguez un service de données, il est plus utile d'obtenir des informations sur l'erreur à partir du service de données que dans le cadre d'un fonctionnement normal. Pour obtenir davantage d'informations sur l'erreur à partir du service de données, définissez la propriété UseVerboseErrors dans DataServiceConfiguration sur true et la propriété IncludeExceptionDetailInFaults de l'attribut ServiceDebugBehavior de la classe de service de données sur true. Pour plus d'informations, consultez la publication Débogage de WCF Data Services. Vous pouvez aussi activer le traçage dans WCF pour afficher les exceptions levées dans la couche de messages HTTP. Pour plus d'informations, consultez Configuring Tracing.
Un service de données est généralement développé comme un projet d'application ASP.NET, mais vous pouvez également créer votre service de données comme un projet de site Web ASP.NET dans Visual Studio. Pour plus d'informations sur les différences entre ces deux types de projets, consultez Web Application Projects versus Web Site Projects.
Lorsque vous créez un service de données à l'aide de la boîte de dialogue Ajouter un nouvel élément dans Visual Studio, le service de données est hébergé par ASP.NET dans IIS. Tandis que ASP.NET et IIS sont l'hôte par défaut d'un service de données, d'autres options d'hébergement sont prises en charge. Pour plus d'informations, consultez Hébergement du service de données (WCF Data Services).
Déploiement de WCF Data Services
WCF Data Service permet de choisir le processus qui héberge le service de données. Vous pouvez utiliser Visual Studio pour déployer un service de données sur les plateformes suivantes :
Serveur Web hébergé par IIS
Lorsqu'un service de données est développé dans un projet ASP.NET, il peut être déployé sur un serveur Web IIS à l'aide de processus de déploiement ASP.NET standard. Visual Studio fournit les technologies de déploiement suivantes pour ASP.NET, en fonction du type de projet ASP.NET qui héberge le service de données que vous déployez.
Technologies de déploiement des applications Web ASP.NET
Technologies de déploiement des sites Web ASP.NET
Pour plus d'informations sur le sujet suivant les options de déploiement d'une application ASP.NET, consultez ASP.NET Web Application Project Deployment Overview.
Conseil : Avant de tenter de déployer le service de données sur IIS, testez le déploiement sur un serveur Web qui exécute IIS. Pour plus d'informations, consultez Procédure : développer un WCF Data Service qui fonctionne sur IIS. Windows Azure
Vous pouvez déployer un service de données sur Windows Azure à l'aide de Windows Azure Tools pour Visual Studio. Vous pouvez télécharger Windows Azure Tools pour Visual Studio depuis le Centre de téléchargement Microsoft. Pour plus d'informations sur le sujet suivant le déploiement d'un service de données sur Windows Azure, consultez la publication Déploiement d'un service OData Service dans Windows Azure.
Points à prendre en considération pour le déploiement
Vous devez tenir compte de ce qui suit lorsque vous déployez un service de données :
Lorsque vous déployez un service de données qui utilise le fournisseur Entity Framework pour accéder à la base de données SQL Server, il est possible que vous deviez également propager les structures de données, les données, voire les deux, dans le cadre du déploiement de votre service de données. Visual Studio peut créer automatiquement les scripts (.sql files) nécessaires dans la base de données de destination, et ces scripts peuvent être inclus dans le package de déploiement Web d'une application ASP.NET. Pour plus d'informations, consultez How to: Deploy a Database With a Web Application Project. Pour un site Web ASP.NET, vous pouvez utiliser l'Assistant Publication de base de données dans Visual Studio. Pour plus d'informations, consultez Deploying a Database by Using the Database Publishing Wizard.
Étant donné que Services de données WCF inclut une implémentation WCF de base, vous pouvez utiliser Windows Server AppFabric pour surveiller un service de données déployé sur IIS exécuté sur Windows Server. Pour plus d'informations sur le sujet suivant l'utilisation de Windows Server AppFabric pour surveiller un service de données, consultez la publication Suivi de WCF Data Services avec Windows Server AppFabric.
Voir aussi
Concepts
Hébergement du service de données (WCF Data Services)
Sécurisation de WCF Data Services