我有作業代碼,可以使用 HR SQL 資料庫中的資料更新用戶名和主管。一切正常,直到我嘗試更新在 Google 中沒有經理的用戶的主管。該物件回傳時 UserToUpdate.Relations 等于 null。看起來我應該能夠創建一個關系,但是當我嘗試將 UserRelation 項添加到用戶時,它會出現“System.NullReferenceException:'物件參考未設定為物件的實體。'”錯誤。有什么建議嗎?如果用戶還沒有關系,有沒有辦法向他們添加關系?
我正在運行的代碼:
User UpdateUser = service.Users.Get(sUserEmail).Execute();
//code here to look up data in sql
UserRelation UR = new UserRelation();
UR.Type = "manager";
UR.Value = sManagersEmail;
UpdateUser.Relations.Add(UR); //this is where it fails
service.Users.Update(UpdateUser, sUserEmail).Execute();
我也試過使用 .Insert 方法而不是 .Add:
UpdateUser.Relations.Insert(0,UR); //this also fails
無濟于事 - 結果相同。
對于已經有經理的用戶,這有效:
UpdateUser.Relations[0].value = sManagersEmail;
我找不到任何進一步的參考來使用 .Net 做任何事情;我看到了如何使用 .net API 之外的 JSON 帖子來做到這一點,但似乎我不應該這樣做......
謝謝!
uj5u.com熱心網友回復:
您應該檢查用戶物件上的關系屬性是否不為空,否則實體化一個空串列,您將向其中添加新的關系物件。
嘗試使用它代替失敗的代碼行:
if(UpdateUser.Relations == null){
UpdateUser.Relations = new List<UserRelation>();
}
UpdateUser.Relations.Add(UR);
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/360980.html
標籤:C# 。网 google-admin-sdk
