我使用EFCore 2.1 Database First方法。我非常熟悉SQL语法并且更喜欢自己构建查询,而不是将此工作留在EF上。我使用Table Valued和Scalar Functions来查询数据库。
我为Scalar找到了这个
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和繁荣,我可以使用SQL函数或SP像常规的C#方法。
有没有机会在EFCore中重现这个?
没有逆向工程师(也称为DbContext脚手架)支持它,但您可以使用FromSql()
查询使用表值函数。见these docs。
var searchTerm = "EF Core";
var blogResults = db.Blogs.FromSql(
"SELECT * FROM dbo.SearchBlogs({0})",
searchTerm);