你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
UserDefinedFunction 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 Azure Cosmos DB 服务中的用户定义的函数。
public class UserDefinedFunction : Microsoft.Azure.Documents.Resource
type UserDefinedFunction = class
inherit Resource
Public Class UserDefinedFunction
Inherits Resource
- 继承
示例
以下示例演示如何注册和使用 UDF。
await client.CreateUserDefinedFunctionAsync(collectionLink, new UserDefinedFunction { Id = "calculateTax", Body = @"function(amt) { return amt * 0.05; }" });
client.CreateDocumentQuery<Book>(collectionLink, "SELECT VALUE udf.calculateTax(b.price) FROM books b");
client.CreateDocumentQuery<Book>(collectionLink, new SqlQuerySpec("SELECT VALUE udf.calculateTax(b.price) FROM books b"));
client.CreateDocumentQuery<Book>(collectionLink).Select(b => UserDefinedFunctionProvider.Invoke("calculateTax", b.Price));
await client.CreateUserDefinedFunctionAsync(collectionLink, new UserDefinedFunction { Id = "toLowerCase", Body = @"function(s) { return s.ToLowerCase(); }" });
client.CreateDocumentQuery<Book>(collectionLink, "SELECT * FROM books b WHERE b.toLowerCase = 'war and peace'");
client.CreateDocumentQuery<Book>(collectionLink, new SqlQuerySpec(
"SELECT * FROM books b WHERE b.toLowerCase = @bookNameLowerCase",
new SqlParameterCollection(new SqlParameter[] {new SqlParameter { Name = "@bookNameLowerCase", Value = "War And Peace".ToLower()
}})));
client.CreateDocumentQuery<Book>(collectionLink).Where(b => UserDefinedFunctionProvider.Invoke("toLowerCase", b.Title) == "war and peace");
注解
Azure Cosmos DB 支持 JavaScript 用户定义函数 (UDF) ,这些函数存储在数据库中,可在查询中使用。 有关如何在 http://azure.microsoft.com/documentation/articles/documentdb-sql-query/#javascript-integration 查询中使用 UDF,请参阅 。 有关在 http://azure.microsoft.com/documentation/articles/documentdb-programming/#udf JavaScript 中实现 UDF 的更多详细信息,请参阅 。
构造函数
UserDefinedFunction() |
为 Azure Cosmos DB 服务初始化 类的新实例 UserDefinedFunction 。 |
属性
AltLink |
从 Azure Cosmos DB 服务中获取与资源关联的 alt 链接。 (继承自 Resource) |
Body |
获取或设置 Azure Cosmos DB 服务的用户定义函数的正文。 |
ETag |
从 Azure Cosmos DB 服务中获取与资源关联的实体标记。 (继承自 Resource) |
Id |
获取或设置 Azure Cosmos DB 服务中资源的 ID。 (继承自 Resource) |
ResourceId |
获取或设置与 Azure Cosmos DB 服务中的资源关联的资源 ID。 (继承自 Resource) |
SelfLink |
从 Azure Cosmos DB 服务获取与资源关联的自链接。 (继承自 Resource) |
Timestamp |
从 Azure Cosmos DB 服务中获取与资源关联的上次修改时间戳。 (继承自 Resource) |
方法
GetPropertyValue<T>(String) |
从 Azure Cosmos DB 服务中获取与指定属性名称关联的属性值。 (继承自 Resource) |
LoadFrom(JsonReader) |
从 Azure Cosmos DB 服务中的指定 JSON 读取器加载对象。 (继承自 JsonSerializable) |
LoadFrom(JsonReader, JsonSerializerSettings) |
从 Azure Cosmos DB 服务中的指定 JSON 读取器加载对象。 (继承自 JsonSerializable) |
SaveTo(Stream, SerializationFormattingPolicy) |
将 对象保存到 Azure Cosmos DB 服务中的指定流。 (继承自 JsonSerializable) |
SaveTo(Stream, SerializationFormattingPolicy, JsonSerializerSettings) |
将 对象保存到 Azure Cosmos DB 服务中的指定流。 (继承自 JsonSerializable) |
SetPropertyValue(String, Object) |
设置与 Azure Cosmos DB 服务中的指定属性名称关联的属性值。 (继承自 Resource) |
ToByteArray() |
通过 Azure Cosmos DB 服务的 SaveTo 序列化为字节数组。 (继承自 Resource) |
ToString() |
返回 Azure Cosmos DB 服务中对象的字符串表示形式。 (继承自 JsonSerializable) |