Entity Framework Core Database Table Valued Functions Mapping

There's no reverse engineer (aka DbContext scaffolding) support for it, but you can use FromSql() to query using table-valued functions. See these docs.

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

Source : https://www.allhandsontech.com/data-professional/entityframework/entity-framework-core-advanced-mapping/

Use HasDbFunction to do a mapping, refer Microsoft doc

It requires return types to be declared as Keyless entity using HasNoKeyMicrosoft doc

Configure EF Context to expose Db function

modelBuilder.HasDbFunction(typeof(SalesContext)
    .GetMethod(nameof(NameAndTotalSpentByCustomer)))
    .HasName("CustomerNameAndTotalSpent");

modelBuilder.Entity<CustWithTotalClass>().HasNoKey();

Invoke Db function in calling code

_context.NameAndTotalSpentByCustomer().Where(c=>c.TotalSpent>100).ToList();

Generated SQL

SELECT [c].[Name], [c].[TotalSpent]
FROM [dbo].[CustomerNameAndTotalSpent]() AS [c]
WHERE [c].[TotalSpent] > 100