Partager via


Utiliser des données dans Visual Studio

Dans Visual Studio, vous pouvez créer des applications qui se connectent à des données dans pratiquement n’importe quel produit ou service de base de données, dans n’importe quel format, n’importe où, sur un ordinateur local, sur un réseau local ou dans un cloud public, privé ou hybride.

Pour les applications en JavaScript, Python, PHP, Ruby ou C++, vous vous connectez à des données comme vous le faites, en obtenant des bibliothèques et en écrivant du code. Pour les applications .NET, Visual Studio fournit des outils que vous pouvez utiliser pour explorer les sources de données, créer des modèles objet pour stocker et manipuler des données en mémoire et lier des données à l’interface utilisateur. Microsoft Azure fournit des kits SDK pour .NET, Java, Node.js, PHP, Python, Ruby et les outils mobiles dans Visual Studio pour la connexion au stockage Azure.

Les listes suivantes montrent seulement quelques-uns des nombreux systèmes de base de données et de stockage qui peuvent être utilisés à partir de Visual Studio. Les offres Microsoft Azure sont des services de données qui incluent l’approvisionnement et l’administration du magasin de données sous-jacent. La charge de travail de développement Azure dans Visual Studio vous permet d’utiliser des magasins de données Azure directement à partir de Visual Studio.

charge de travail de développement Azure

La plupart des autres produits de base de données SQL et NoSQL répertoriés ici peuvent être hébergés sur une machine locale, sur un réseau local ou dans Microsoft Azure sur une machine virtuelle. Si vous hébergez la base de données dans une machine virtuelle Microsoft Azure, vous êtes responsable de la gestion de la base de données elle-même.

Microsoft Azure

  • Base de données SQL
  • Azure Cosmos DB
  • Stockage (blobs, tables, files d'attente, fichiers)
  • SQL Data Warehouse
  • SQL Server Stretch Database
  • StorSimple
  • Et bien plus...

SQL

  • SQL Server 2005-2016 (inclut Express et LocalDB)
  • Firebird
  • MariaDB
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite
  • Et bien plus...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • Et bien plus...

De nombreux fournisseurs de base de données et tiers prennent en charge l’intégration de Visual Studio par les packages NuGet. Vous pouvez explorer les offres sur nuget.org ou via le Gestionnaire de package NuGet dans Visual Studio (Tools>Gestionnaire de package NuGet>Gérer les packages NuGet pour la solution). D’autres produits de base de données s’intègrent à Visual Studio en tant qu’extension. Vous pouvez parcourir ces offres dans le Visual Studio Marketplace ou en accédant à Extensions>Gérer les extensions, puis en sélectionnant en ligne dans le volet gauche de la boîte de dialogue. Pour plus d’informations, consultez systèmes de base de données compatibles pour Visual Studio.

En utilisant Visual Studio Connected Services, vous pouvez simplifier le processus d’ajout de la prise en charge de la base de données à vos projets.

Pour les scénarios SQL Server que nous prenons en charge via les services connectés :

  • SQL Server sur site. Dans ce scénario, vous installez SQL Server quelque part sur votre réseau local et connectez-vous à celui-ci.
  • SQL Server sur votre ordinateur local. Dans ce scénario, vous installez SQL Server sur votre ordinateur local et vous y connectez.
  • SQL Server Express LocalDB. Vous n’installez rien d’autre que Visual Studio ; vous venez de vous y connecter.
  • SQL Server Express LocalDB sur le conteneur. LocalDB comme dans l’option précédente, mais à l’intérieur d’un conteneur local.
  • Base de données Azure SQL Server. Connectez-vous au service en cours d’exécution dans Azure.

Pour les autres technologies liées aux données, Visual Studio 2022 prend en charge les éléments suivants :

  • Stockage Azure (local et distant)
  • Azure Cosmos DB (local et distant)
  • SQLite (option locale uniquement)
  • PostgreSQL sur le conteneur (option locale uniquement)
  • MongoDB sur le conteneur (option locale uniquement)

Outre les services connectés, les listes suivantes montrent quelques-uns des nombreux systèmes de base de données et de stockage qui peuvent être utilisés à partir de Visual Studio. Les offres Microsoft Azure sont des services de données qui incluent l’approvisionnement et l’administration du magasin de données sous-jacent. La charge de travail de développement Azure dans Visual Studio vous permet d’utiliser des magasins de données Azure directement à partir de Visual Studio.

charge de travail de développement Azure

La plupart des autres produits de base de données SQL et NoSQL répertoriés ici peuvent être hébergés sur une machine locale, sur un réseau local ou dans Microsoft Azure sur une machine virtuelle. Si vous hébergez la base de données dans une machine virtuelle Microsoft Azure, vous êtes responsable de la gestion de la base de données elle-même.

Microsoft Azure

  • SQL Data Warehouse
  • SQL Server Stretch Database
  • StorSimple
  • Et bien plus...

SQL

  • Firebird
  • MariaDB
  • MySQL
  • Oracle
  • Et bien plus...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • Et bien plus...

Remarque

La prise en charge étendue de SQL Server 2005 a pris fin le 12 avril 2016. Il n’existe aucune garantie que les outils de données dans Visual Studio 2015 et versions ultérieures continueront à fonctionner avec SQL Server 2005.

Langages .NET

La technologie d’accès aux données décrite dans la documentation de Visual Studio utilise ADO.NET. ADO.NET est une infrastructure d’accès aux données héritée et n’est pas recommandée pour les applications de données modernes. Nous vous recommandons de cibler .NET Core ou .NET 5 et versions ultérieures et d’utiliser Entity Framework Core pour le développement d’accès aux données.

ADO.NET est un ensemble de classes qui définit une interface permettant d’accéder à n’importe quel type de source de données, à la fois relationnelle et non relationnelle. Visual Studio dispose de plusieurs outils et concepteurs qui fonctionnent avec ADO.NET pour vous aider à vous connecter aux bases de données, manipuler les données et présenter les données à l’utilisateur. La documentation de cette section décrit comment utiliser ces outils. Vous pouvez également programmer directement sur les objets de commande ADO.NET. Pour plus d’informations sur l’appel des API ADO.NET directement, consultez ADO.NET.

Pour la documentation sur l'accès aux données relatif à ASP.NET, consultez Travailler avec les données sur le site ASP.NET. Pour obtenir un didacticiel sur l’utilisation d’Entity Framework avec ASP.NET Modèle-View-Controller (MVC), consultez Prise en main d’Entity Framework 6 Code First à l’aide de MVC 5.

Les applications de plateforme Windows universelle (UWP) en C# ou Visual Basic peuvent utiliser le Kit de développement logiciel (SDK) Microsoft Azure pour .NET pour accéder au stockage Azure et à d’autres services Azure. La classe Windows.Web.HttpClient active la communication avec n’importe quel service RESTful. Pour plus d’informations, consultez Comment se connecter à un serveur HTTP à l’aide de Windows.Web.Http.

Pour le stockage des données sur l’ordinateur local, l’approche recommandée consiste à utiliser SQLite, qui s’exécute dans le même processus que l’application. Si une couche ORM (Object-Relational Mapping) est requise, vous pouvez utiliser Entity Framework. Pour plus d’informations, consultez accès aux données.

Si vous vous connectez aux services Azure, veillez à télécharger les derniers outils SDK Azure.

Fournisseurs de données

Pour qu’une base de données soit consommable dans ADO.NET, elle doit avoir un fournisseur de données ADO.NET personnalisé ou exposer une interface ODBC ou OLE DB. Microsoft fournit une liste de fournisseurs de données ADO.NET pour les produits SQL Server, ainsi que des fournisseurs ODBC et OLE DB.

Remarque

Si vous utilisez Visual Studio pour vous connecter à des bases de données à l’aide de fournisseurs de données OLEDB ou ODBC, vous devez savoir que les versions de Visual Studio antérieures à Visual Studio 2022 sont toutes des processus 32 bits. Cela signifie que certains outils de données de Visual Studio peuvent uniquement se connecter à des bases de données OLEDB ou ODBC à l’aide de fournisseurs de données 32 bits. Le fournisseur de données OLEDB 32 bits de Microsoft Access ainsi que d'autres fournisseurs tiers 32 bits sont inclus.

Si vous utilisez Visual Studio 2022 pour vous connecter aux bases de données, vous devez être conscient que Visual Studio 2022 est un processus 64 bits. Cela signifie que certains des outils de données de Visual Studio ne pourront pas se connecter à des bases de données OLEDB ou ODBC à l’aide de fournisseurs de données 32 bits.

Si vous devez gérer des applications 32 bits qui se connectent à des bases de données OLEDB ou ODBC, vous pourrez toujours générer et exécuter l’application avec Visual Studio 2022. Toutefois, si vous devez utiliser l’un des outils de données Visual Studio tels que l’Explorateur de serveurs, l’Assistant Source de données ou le Concepteur DataSet, vous devez utiliser une version antérieure de Visual Studio qui est toujours un processus 32 bits. La dernière version de Visual Studio qui était un processus 32 bits était Visual Studio 2019.

Si vous envisagez de convertir le projet en processus 64 bits, il est recommandé d’utiliser le moteur de base de données Microsoft Access 64 bits, également appelé Moteur de connectivité Access (ACE). Consultez pour plus d'informations sur le fournisseur OLE DB pour Jet et le pilote ODBC, qui sont uniquement disponibles en versions 32 bits.

Modélisation des données

Dans .NET, vous avez trois choix pour modéliser et manipuler des données en mémoire après l’avoir récupérée à partir d’une source de données :

  • Entity Framework: technologie MICROSOFT ORM préférée. Vous pouvez l’utiliser pour programmer des données relationnelles en tant qu’objets .NET de première classe. Pour les nouvelles applications, il doit s’agir du premier choix par défaut lorsqu’un modèle est requis. Cela nécessite une prise en charge personnalisée du fournisseur ADO.NET sous-jacent.

  • LINQ to SQL: mappeur relationnel objet de génération antérieure. Il fonctionne bien pour les scénarios moins complexes, mais n’est plus en développement actif.

  • jeux de données: le plus ancien des trois technologies de modélisation. Il est conçu principalement pour le développement rapide d’applications « formulaires sur données » dans lesquels vous ne traitez pas d’énormes quantités de données ou d’exécution de requêtes ou de transformations complexes. Un objet DataSet se compose d’objets DataTable et DataRow qui ressemblent logiquement aux objets SQL Database beaucoup plus qu’aux objets .NET. Pour les applications relativement simples basées sur des sources de données SQL, les jeux de données peuvent toujours être un bon choix.

Il n’est pas nécessaire d’utiliser l’une de ces technologies. Dans certains scénarios, en particulier lorsque les performances sont critiques, vous pouvez simplement utiliser un objet DataReader pour lire à partir de la base de données et copier les valeurs dont vous avez besoin dans un objet de collection tel que List<T>.

C++ natif

Les applications C++ qui se connectent à SQL Server doivent utiliser le Microsoft® ODBC Driver 13.1 pour SQL Server dans la plupart des cas. Si les serveurs sont liés, OLE DB est nécessaire et pour cela, vous utilisez le SQL Server Native Client. Vous pouvez directement accéder à d’autres bases de données à l’aide de pilotes ODBC ou OLE DB. ODBC est l’interface de base de données standard actuelle, mais la plupart des systèmes de base de données fournissent des fonctionnalités personnalisées qui ne sont pas accessibles via l’interface ODBC. OLE DB est une technologie d’accès aux données COM héritée qui est toujours prise en charge, mais qui n’est pas recommandée pour les nouvelles applications. Pour plus d’informations, consultez Accès aux données dans Visual C++.

Les programmes C++ qui consomment des services REST peuvent utiliser le sdk REST C++.

Modélisation des données : Visual Studio ne fournit pas de couche ORM pour C++. ODB est un ORM open source populaire pour C++.

Pour en savoir plus sur la connexion aux bases de données à partir d’applications C++, consultez Outils de données Visual Studio pour C++.

JavaScript

JavaScript dans Visual Studio est un langage de première classe pour la création d’applications multiplateformes, d’applications UWP, de services cloud, de sites web et d’applications web. Vous pouvez utiliser Bower, Grunt, Gulp, npm et NuGet à partir de Visual Studio pour installer vos bibliothèques JavaScript et produits de base de données favoris. Connectez-vous à Azure Storage et aux services en téléchargeant les SDK depuis le site Azure . Edge.js est une bibliothèque qui connecte JavaScript côté serveur (Node.js) à ADO.NET sources de données.

Python

Installez le support Python dans Visual Studio pour créer des applications Python. La documentation Azure présente plusieurs didacticiels sur la connexion aux données, notamment les suivantes :

Stockage Microsoft Azure: décrit stockage Azure et comment créer des applications à l’aide d’objets blob, de tables, de files d’attente et de fichiers Azure.

azure SQL Database: explique comment se connecter à Azure SQL Database, une base de données relationnelle en tant que service.

SQL Server Data Tools: décrit les outils qui simplifient la conception, l’exploration, le test et le déploiement d’applications et de bases de données connectées aux données.

ADO.NET: décrit l’architecture de ADO.NET et comment utiliser les classes ADO.NET pour gérer les données d’application et interagir avec les sources de données et XML.

ADO.NET Entity Framework: décrit comment créer des applications de données qui permettent aux développeurs de programmer sur un modèle conceptuel au lieu d’être directement sur une base de données relationnelle.

wcf Data Services 4.5: décrit comment utiliser WCF Data Services pour déployer des services de données sur le web ou un intranet qui implémentent le OData (Open Data Protocol).

Données dans les solutions Office: contient des liens vers des rubriques qui expliquent le fonctionnement des données dans les solutions Office. Cela inclut des informations sur la programmation orientée schéma, la mise en cache des données et l’accès aux données côté serveur.

LINQ (requête intégrée au langage): décrit les fonctionnalités de requête intégrées à C# et Visual Basic, ainsi que le modèle commun pour l’interrogation de bases de données relationnelles, de documents XML, de jeux de données et de collections en mémoire.

Outils XML dans Visual Studio: traite de l’utilisation des données XML, du débogage des fonctionnalités XSLT, .NET XML et de l’architecture de la requête XML.

Documents et données XML: fournit une vue d’ensemble complète d’un ensemble de classes intégrées et complètes qui interagissent avec des documents et des données XML dans .NET.