小编Ahm*_*mad的帖子

从所有 Outlook 联系人文件夹中获取联系人 Microsoft Graph

我正在使用 Microsoft Graph 使用以下代码检索联系人文件夹:

GraphServiceClient client = new GraphServiceClient(new DelegateAuthenticationProvider(
    (requestMessage) => {
        requestMessage.Headers.Authorization = 
          new AuthenticationHeaderValue("Bearer", accessToken);
        return Task.FromResult(0);
    }));

var contactsData = await client
    .Me
    .Contacts
    .Request()
    .Top(1000)
    .GetAsync();
Run Code Online (Sandbox Code Playgroud)

上面的代码返回联系人,但只返回默认文件夹中的联系人。我想从用户的所有文件夹中检索联系人。

我试过先获取文件夹,然后获取他们的联系人,但它返回 a Null Reference Exceptionas Contacts are null

var Folders = client
    .Me
    .ContactFolders
    .Request()
    .Top(1000)
    .GetAsync();

Folders.Wait();
var contacts = Folders.Result.SelectMany(a => a.Contacts).ToList();
Run Code Online (Sandbox Code Playgroud)

c# microsoft-graph-api

5
推荐指数
1
解决办法
898
查看次数

在linq查询中处理可空布尔

我有一种情况,我将可为空的布尔值传递给该方法,然后在linq查询中,如果该参数为null,则需要获取所有记录,否则进行比较并返回相对值。

这是我尝试过的方法(简化了仅询问相关问题的方法)

public List<Something> Fetch(bool? allocated = null){
   return (from x in DbContext.Something 
            where x.Active && (allocated == null || x.Allocated == allocated.Value)
            select x).ToList();
}
Run Code Online (Sandbox Code Playgroud)

我也检查过,allocated.HasValue但是每次都出现相同的问题。

我得到的异常是:

System.InvalidOperationException:'空对象必须具有一个值。

c# linq

2
推荐指数
1
解决办法
315
查看次数

标签 统计

c# ×2

linq ×1

microsoft-graph-api ×1