Столкнулся с этим когда при создании Item мне потребовалось заполнить поля на основании уже существующей информации. Вариантов решения я вижу два, либо сразу после AddItem() делать Update() (это может привести к проблемам с некоторыми типами листов , например с Disucssion), либо получать все необходимое перед созданием.
Примерчик вызывающий ошибку:
using (var clientContext = new ClientContext(@"http://server")) { var lst = clientContext.Web.Lists.GetByTitle("Tasks"); var lci = new ListItemCreationInformation(); lci.UnderlyingObjectType = FileSystemObjectType.File; var it = lst.AddItem(lci); //it1.Update(); clientContext.Load(it); clientContext.ExecuteQuery(); it["Title"] = "check1"; it.Update(); clientContext.ExecuteQuery(); Console.WriteLine(it.Id); }
Комментариев нет:
Отправка комментария