Мое приложение редактирует файл в SharePoint через веб-клиент / WebDAV (перенаправитель WebDAV). Как я могу проверить / зарегистрироваться? - PullRequest
4 голосов
/ 11 февраля 2009

Я интегрирую свое приложение, чтобы оно могло редактировать файлы, хранящиеся в SharePoint. Я использую службу веб-клиента AKA WebDAV Redirector (webclnt.dll), которая прекрасно справляется с возможностью перенаправления обычных вызовов API Windows CreateFile / read / write с их обычного пути ввода-вывода с диска в сеть через WebDAV. Тем не менее, я могу получить доступ к файлу только для чтения, если он зарегистрирован.

С помощью службы веб-клиента, как я могу заставить файл извлекаться при редактировании, а затем проверять его, когда я закончу его редактировать?

Редактировать: я пытался использовать GetFileAttributes и SetFileAttributes для проверки FILE_ATTRIBUTE_READONLY, надеясь, что смогу использовать этот флаг, чтобы определить, когда файл не был извлечен, а затем проверить его (сняв этот флаг, чтобы проверить, затем установить его, чтобы проверить это). Не повезло там; файл всегда отображается как недоступный только для чтения.

1 Ответ

1 голос
/ 12 февраля 2009

Для выполнения проверки / извлечения файла необходимо использовать следующий код:

SPSite oSite = new SPSite ("http://<sitename>/");
SPWeb oWeb = oSite.OpenWeb(); 
SPList oList = oWeb.Lists["Shared Documents"];
SPListItem oListItem = oList.Items[0]; //taking the first list item
oListItem.File.CheckOut();
oListItem["Name"] = "xyz";           
oListItem.Update();
oListItem.File.CheckIn("file name has been changed");

Если вам нужно выполнить регистрацию / выписку через SharePoint WebService, вам следует взглянуть на код в блоге Брэда МакКейбла в Пример веб-службы Windows Sharepoint Services .

...