Microsoft Graph API:使用展开和筛选获取消息失败并出现异常:"Found an unbalanced bracket expression."(使用 C#)
Microsoft Graph API: Get message with expand and filter fails with an exception: "Found an unbalanced bracket expression." (using C#)
我在使用 Microsoft Graph 从 CONTOSO 获取消息和通过其 属性 标记预定义的 属性 时遇到问题。我想获得带有 属性 标签“0x001a”的“ItemClass”属性 作为扩展 属性。
- 使用图形资源管理器时,以下 GET 请求工作正常:
GET https://graph.microsoft.com/v1.0/me/messages/AAMkADllMzJhZmVmLWE4MzgtNDViZS04NmM5LTBjMDhiMTBlNzMwYwBGAAAAAABJSnHDPwmbTJ60RQw_Q9SDBwCyg33-YW4bRI0rrBOy6gXhAAAAAAEMAACyg33-YW4bRI0rrBOy6gXhAAAXMQ5nAAA=?$expand=SingleValueExtendedProperties($filter=Id eq 'String 0x001a')
- 如果我从 c# 发出相同的请求,我会得到以下异常,即使我使用 URL 编码(请参阅下面代码中的 B):
消息:解析 OData Select 和展开失败:发现不平衡的括号表达式。
C# 代码如下所示:
ClientCredentialProvider authenticationProvider =
new ClientCredentialProvider(confidentialClientApplication);
GraphServiceClient graphServiceClient =
new GraphServiceClient(authenticationProvider);
var message = await this.GraphServiceClient
.Me
.Messages["AAMkADllMzJhZmVmLWE4MzgtNDViZS04NmM5LTBjMDhiMTBlNzMwYwBGAAAAAABJSnHDPwmbTJ60RQw_Q9SDBwCyg33-YW4bRI0rrBOy6gXhAAAAAAEMAACyg33-YW4bRI0rrBOy6gXhAAAXMQ5nAAA="]
.Request()
.Expand("singleValueExtendedProperties($filter=id eq 'String 0x001A'") // A
//.Expand("singleValueExtendedProperties(%24filter%3D(id%20eq%20%27String%200x001A%27)") // B)
.GetAsync();
过滤器表达式有什么问题?
您在 .Expand()
中缺少一个 )
。改成
.Expand("singleValueExtendedProperties($filter=id eq 'String 0x001A')")
我在使用 Microsoft Graph 从 CONTOSO 获取消息和通过其 属性 标记预定义的 属性 时遇到问题。我想获得带有 属性 标签“0x001a”的“ItemClass”属性 作为扩展 属性。
- 使用图形资源管理器时,以下 GET 请求工作正常:
GET https://graph.microsoft.com/v1.0/me/messages/AAMkADllMzJhZmVmLWE4MzgtNDViZS04NmM5LTBjMDhiMTBlNzMwYwBGAAAAAABJSnHDPwmbTJ60RQw_Q9SDBwCyg33-YW4bRI0rrBOy6gXhAAAAAAEMAACyg33-YW4bRI0rrBOy6gXhAAAXMQ5nAAA=?$expand=SingleValueExtendedProperties($filter=Id eq 'String 0x001a')
- 如果我从 c# 发出相同的请求,我会得到以下异常,即使我使用 URL 编码(请参阅下面代码中的 B):
消息:解析 OData Select 和展开失败:发现不平衡的括号表达式。
C# 代码如下所示:
ClientCredentialProvider authenticationProvider =
new ClientCredentialProvider(confidentialClientApplication);
GraphServiceClient graphServiceClient =
new GraphServiceClient(authenticationProvider);
var message = await this.GraphServiceClient
.Me
.Messages["AAMkADllMzJhZmVmLWE4MzgtNDViZS04NmM5LTBjMDhiMTBlNzMwYwBGAAAAAABJSnHDPwmbTJ60RQw_Q9SDBwCyg33-YW4bRI0rrBOy6gXhAAAAAAEMAACyg33-YW4bRI0rrBOy6gXhAAAXMQ5nAAA="]
.Request()
.Expand("singleValueExtendedProperties($filter=id eq 'String 0x001A'") // A
//.Expand("singleValueExtendedProperties(%24filter%3D(id%20eq%20%27String%200x001A%27)") // B)
.GetAsync();
过滤器表达式有什么问题?
您在 .Expand()
中缺少一个 )
。改成
.Expand("singleValueExtendedProperties($filter=id eq 'String 0x001A')")