【发布时间】:2018-05-11 20:54:03
【问题描述】:
下面的请求适用于三重转义字符,但不适用于单个转义字符,所以如果我有以下内容:
string filter = "\"category <> \"Person\" AND category <> \"Person 2\""
上面打印的字符串会给我们:
filter = "category <> "Person" AND category <> "Person 2""
这不起作用,但下面的过滤器定义将起作用:
string filter =
"\"category <> \\\"Person\\\" AND category <> \\\"Person2\\\"\"";
List<QueryOption> options = new List<QueryOption>
{
new QueryOption("$search", filter)
};
var messages = graphClient.Me
.MailFolders
.Inbox
.Messages
.Request(options)
.Select("id, Categories, Subject")
.Top(500)
.GetAsync()
.Result;
打印的这个过滤器给我们:
filter = "category <> \"Person\" AND category <> \"Person 2\""
为什么我们在 API 调用的打印字符串中包含一个 \?有人可以解释一下吗?
如果 \ 是 Microsoft Graph 中的转义字符,那么这是有道理的,但 Graph 中的转义字符是另一个“。”。
【问题讨论】: