You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用C#/.Net Google Admin API如何为无关联的用户新增首个关系

问题根因

当Google侧用户从未设置过任何关联关系(包括经理、助理等)时,API返回的User对象的Relations属性不会被初始化为空集合,而是直接为null,所以直接调用Add/Insert方法就会触发空引用异常。而已经设置过经理的用户,Relations已经被初始化为集合对象,所以可以直接修改下标对应的值。

解决方案

在操作Relations属性前,先判断是否为null,如果为null则手动初始化集合即可,修改后的代码逻辑如下:

User UpdateUser = service.Users.Get(sUserEmail).Execute();
// 此处为SQL查询逻辑
UserRelation UR = new UserRelation();
UR.Type = "manager";
UR.Value = sManagersEmail;

// 新增初始化判断逻辑
if (UpdateUser.Relations == null)
{
    UpdateUser.Relations = new List<UserRelation>();
}

UpdateUser.Relations.Add(UR);
service.Users.Update(UpdateUser, sUserEmail).Execute();

如果需要避免重复添加经理关联,可以补充已存关联的校验逻辑:

var existManager = UpdateUser.Relations.FirstOrDefault(r => r.Type == "manager");
if (existManager != null)
{
    existManager.Value = sManagersEmail;
}
else
{
    UpdateUser.Relations.Add(UR);
}

内容的提问来源于stack exchange,提问作者Goldilox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 14:36:02