#c# #asp.net-web-api #sharepoint #sharepoint-online #csom
Вопрос:
Я пишу службу API, которая получает файл и несколько информационных параметров, а затем загружает этот файл с помощью API CSOM SharePoint на указанную страницу SharePoint.
Проверенное поле выглядит следующим образом
=ValidatedField gt; 20
Мой код выглядит примерно так …
using (ClientContext ctx = new(siteUrl)) { List docLib = ctx .Web.Lists.GetByTitle(docName); Folder folder= docLib.RootFolder; ... File uploadedFile = folder.Files.Add(fileCreationInfo); uploadedFile.CheckOut(); // lt;-- can this be done simultaneously with the statement above ctx.Load(uploadedFile, i =gt; i.ListItemAllFields); ListItem uploadedListItem = oUploadedFile.ListItemAllFields; uploadedListItem["ValidatedField"] = 25; // this field is validated to always be bigger than 20 uploadedListItem.Update(); uploadedFile.CheckIn("CheckIn message"); await ctx.ExecuteQueryAsync(); }
Моя проблема в том, что если у меня есть библиотека документов с полями, подтвержденными формулами, я всегда получаю ошибку. Конечно, я знаю, что нарушаю формулу проверки, но я не могу задать поля до загрузки самого файла. И я не могу загрузить проверенный файл, поэтому формулы проверки не применяются.
Веб-интерфейс автоматически проверяет загруженный файл, если в библиотеке документов есть проверенные поля. Как я могу выполнить это программно? Использование полей минимальное и максимальное допустимое значение не является опцией. Я хочу быть более универсальным и использовать формулу проверки