如果使用实体框架,如何在 LINQ 表达式中使用 MS-SQL 存储函数?
SQL 函数是用CREATE FUNCTION MyFunction(@name) ...
) 创建的。我希望以类似的方式访问它:
var data = from c in entities.Users where MyFunction(c.name) = 3;
不幸的是,我只有 .NET 3.5 可用。
如果使用实体框架,如何在 LINQ 表达式中使用 MS-SQL 存储函数?
SQL 函数是用CREATE FUNCTION MyFunction(@name) ...
) 创建的。我希望以类似的方式访问它:
var data = from c in entities.Users where MyFunction(c.name) = 3;
不幸的是,我只有 .NET 3.5 可用。
您实际上可以在 EF 1 中导入 DB 函数。但是您没有进入EdmFunctionAttribute
EF 1,因此您仅限于可以使用它们的上下文。为此,您需要 EF 4。
对于您的情况,您可能需要考虑映射一个 proc 返回Users
(对于 3.5;同样,对于此功能,4 更好)。