实体框架核心数据库表值函数映射

Mic*_*dze 6 stored-procedures user-defined-functions ef-core-2.1

我使用EFCore 2.1数据库优先方法。我非常熟悉 SQL 语法,更喜欢自己构建查询,而不是将这项工作留给 EF。我使用表值函数和标量函数来查询数据库。

我为标量找到了这个

https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-2.0#database-scalar-function-mapping

但不幸的是没有关于函数。

当我运行 Scaffolding 时,有没有办法强制 Visual Studio 从 SQL Server 中获取所有表函数和标量函数和存储过程?

我以前使用 LINQ to SQL dbml设计器。使用dbml一切都非常简单。您从服务器资源管理器拖放到dbml和繁荣,我可以像常规 C# 方法一样使用 SQL 函数或 SP。

在此处输入图片说明

有机会在 EFCore 中重现这个吗?

bri*_*lam 2

它没有逆向工程师(又名 DbContext 脚手架)支持,但您可以FromSql()使用表值函数进行查询。请参阅这些文档

var searchTerm = "EF Core";
var blogResults = db.Blogs.FromSql(
    "SELECT * FROM dbo.SearchBlogs({0})",
    searchTerm);
Run Code Online (Sandbox Code Playgroud)