Share via


你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

UserDefinedFunction 类

定义

表示 Azure Cosmos DB 服务中的用户定义的函数。

public class UserDefinedFunction : Microsoft.Azure.Documents.Resource
type UserDefinedFunction = class
    inherit Resource
Public Class UserDefinedFunction
Inherits Resource
继承
UserDefinedFunction

示例

以下示例演示如何注册和使用 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)

适用于