“FromSql”或“SqlQuery”是使用不可组合的 SQL 以及在其上组合的查询来调用的

问题描述 投票:0回答:1

我有一个简单的存储过程,我称之为 FromSqlRaw 命令。

db.Package.FromSqlRaw("EXEC dbo.sp_GetPackage").First();

在这种情况下,请告诉我以下错误:

“FromSql”或“SqlQuery”是使用不可组合的 SQL 以及在其上组合的查询来调用的。 考虑在方法之后调用“AsEnumerable”以在客户端执行组合。

当然,当我将代码更改为:

db.Package.FromSqlRaw("EXEC dbo.sp_GetPackage").Tolist().First();

目前正在工作。

实际上,我不应该使用Tolist()。你能帮我吗?

stored-procedures entity-framework-core
1个回答
0
投票

检查您是否没有在实体中使用 HasQueryFilter modelBuilder.Entity(类型).HasQueryFilter(谓词); 如果是这种情况,请使用 .IgnoreQueryFilters() 并执行以下操作: customStorage.Set().FromSqlRaw(sql, userId).IgnoreQueryFilters().ToListAsync() 例如。

© www.soinside.com 2019 - 2024. All rights reserved.