规范函数 (Entity SQL)
本节讨论所有数据提供程序支持的并可由所有查询技术使用的规范函数。规范函数不能由提供程序扩展。
这些规范函数将转换为提供程序的相应数据源功能。这样,就可以用一种在不同数据源间通用的形式表示函数调用。
因为这些规范函数独立于数据源,所以会按 实体数据模型 (EDM) 中的类型来定义规范函数的参数和返回类型。但某些数据源可能不支持 EDM 中的所有类型。
当在 Entity SQL 查询中使用规范函数时,将在数据源中调用适当的函数。
所有规范函数都同时显式指定 null 输入行为和错误条件。存储提供程序应遵循此行为,但 实体框架 不强制执行此行为。
对于 LINQ 方案,对 实体框架 所执行的查询涉及将 CLR 方法映射到基础数据源中的方法。CLR 方法映射到规范函数,这样,无论数据源如何,特定的方法集都会正确映射。
规范函数命名空间
规范函数的命名空间是 Edm。Edm 命名空间自动包含在所有查询中。但如果导入的另一个命名空间包含与规范函数(在 Edm 命名空间中)同名的函数,则必须指定命名空间。
本节内容
- 聚合规范函数 (Entity SQL)
讨论 Entity SQL 聚合规范函数。
- 数学规范函数 (Entity SQL)
讨论 Entity SQL 数学规范函数。
- 字符串规范函数 (Entity SQL)
讨论 Entity SQL 字符串规范函数。
- 日期和时间规范函数 (Entity SQL)
讨论 Entity SQL 日期和时间规范函数。
- 按位规范函数 (Entity SQL)
讨论 Entity SQL 按位规范函数。
- 其他规范函数 (Entity SQL)
讨论未分类为按位、日期/时间、字符串、数字或聚合函数的函数。