[英]LINQ: Call Stored Procedure and Join its results with IQueryable
我有:
一个存储过程,该过程检索另一个邮政编码周围半径范围内的邮政编码
带联系人的表
我正在通过IQueryable接口获取联系人,该接口已使用各种扩展方法进行扩展,以按年龄等过滤结果。
我遇到的麻烦是添加了一个IQueryable扩展方法,该方法调用上述存储过程(半径中的邮政编码),然后将这些邮政编码与我的IQueryable联系人列表结合在一起。
任何想法如何做到这一点?
为此,您需要将sp换成udf。 通过简单地将(现有)sp转发到(新)udf,通常可以在不影响任何现有代码(调用SP)的情况下进行操作,即
CREATE PROC foo @blah int
AS
BEGIN
SELECT * FROM dbo.foo_udf(@blah)
END
LINQ-to-SQL支持针对udfs的组合性,但不支持SPs,因此您应该能够在查询中(通过yourContext.UdfName(...)
)加入UDF。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.