Maison > développement back-end > C++ > Comment puis-je exécuter des requêtes SQL brutes dans le noyau de Framework Entity sans utiliser DBSET?

Comment puis-je exécuter des requêtes SQL brutes dans le noyau de Framework Entity sans utiliser DBSET?

Patricia Arquette
Libérer: 2025-01-27 01:06:10
original
607 Les gens l'ont consulté

How Can I Execute Raw SQL Queries in Entity Framework Core Without Using DbSet?

Exécuter des requêtes SQL brutes dans Entity Framework Core sans DbSet

Dans Entity Framework Core, il devient plus difficile d'exécuter des requêtes SQL brutes qui ne reposent pas sur des DbSets. La méthode traditionnelle dbData.Database.SqlQuery<somemodel> a été supprimée et les développeurs doivent trouver d'autres moyens de récupérer des données à l'aide de requêtes SQL.

EF Core 8 et supérieur

EF Core 8 introduit la méthode SqlQuery, qui prend en charge le renvoi de valeurs scalaires et de types arbitraires à partir de requêtes SQL brutes. Cette méthode vous permet d'exécuter directement une requête SQL et de mapper les résultats au type requis.

EF Core 3.0

Avec EF Core 3.0, les types d’entités sans clé (anciennement types de requête) peuvent être utilisés. Ces types ne sont pas mappés à des tables de base de données spécifiques, ce qui permet une récupération arbitraire des données. Pour définir un type d'entité sans clé, utilisez l'annotation de données [Keyless] ou la méthode HasNoKey() dans la configuration de votre modèle.

EF Core 2.1

Dans EF Core 2.1 Release Candidate 1, des types de requêtes ont été introduits. Ces types sont utilisés comme types de retour pour les requêtes FromSql() temporaires qui correspondent à des vues de base de données ou à des tables qui n'ont pas de clé primaire. Définissez un attribut DbQuery<t> dans votre DbContext pour représenter le type de requête, puis utilisez la méthode FromSql pour exécuter la requête.

Exemple :

<code>public DbQuery<somemodel> SomeModels { get; set; }

var result = context.SomeModels.FromSql("SQL_SCRIPT").ToList();</somemodel></code>
Copier après la connexion

Résumé

Ces méthodes offrent différentes manières d'exécuter des requêtes SQL brutes dans Entity Framework Core sans recourir à un DbSet. Choisissez la méthode qui correspond le mieux à vos besoins spécifiques et à votre version d’EF Core.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal