我有一个简单的存储过程,我称之为 FromSqlRaw 命令。
db.Package.FromSqlRaw("EXEC dbo.sp_GetPackage").First();
在这种情况下,请告诉我以下错误:
“FromSql”或“SqlQuery”是使用不可组合的 SQL 以及在其上组合的查询来调用的。 考虑在方法之后调用“AsEnumerable”以在客户端执行组合。
当然,当我将代码更改为:
db.Package.FromSqlRaw("EXEC dbo.sp_GetPackage").Tolist().First();
目前正在工作。
实际上,我不应该使用Tolist()。你能帮我吗?
检查您是否没有在实体中使用 HasQueryFilter modelBuilder.Entity(类型).HasQueryFilter(谓词); 如果是这种情况,请使用 .IgnoreQueryFilters() 并执行以下操作: customStorage.Set().FromSqlRaw(sql, userId).IgnoreQueryFilters().ToListAsync() 例如。