我正在阅读我们的Google-Apps-User:
UsersResource.ListRequest userrequest = service.Users.List();
userrequest.MaxResults = 250;
userrequest.Customer = "xxxxxxx";
IList<User> gusers = userrequest.Execute().UsersValue;
foreach (var guser in gusers) { .... }
到目前为止没问题,除了CustomSchema字段,我得到了我想要的东西。 在API-Explorer中,很容易将“投影”设置为“完整”,并且每个都很好,但是在C#-Code中我不知道怎么做。
如果我试试这个:
userrequest.Projection = "FULL";
我得到了这个提示:
UserResource.ListRequest.ProjectionEnum? ListRequest.Projection
我知道真正的编码器就是这个解决方案,但我不明白。 为了让投影“完整”,我需要写些什么? 即使在Google的源代码中,它只是字符串(好吧,我对.Net编码很新,也许我在这里想念很多)
/// <summary>Restrict information returned to a set of selected fields. </summary>
[Google.Apis.Util.RequestParameterAttribute("projection", Google.Apis.Util.RequestParameterType.Query)]
public virtual System.Nullable<ProjectionEnum> Projection { get; set; }
/// <summary>Restrict information returned to a set of selected fields.</summary>
public enum ProjectionEnum
{
/// <summary>Includes only the basic metadata fields (e.g., deviceId, serialNumber, status, and
/// user)</summary>
[Google.Apis.Util.StringValueAttribute("BASIC")]
BASIC,
/// <summary>Includes all metadata fields</summary>
[Google.Apis.Util.StringValueAttribute("FULL")]
FULL,
}
答案 0 :(得分:0)
得到了!!!必须是:
userrequest.Projection = Google.Apis.Admin.Directory.directory_v1.UsersResource.ListRequest.ProjectionEnum.Full;
不知道为什么它无法访问,否则无论如何都会使用目录上下文。