2015-01-27 4 views
0
SPDocumentLibrary library = (SPDocumentLibrary)spweb.Lists["My Documents"]; 
SPFileCollection files = library.RootFolder.Files; 
String strFilename = System.IO.Path.GetFileName(HttpContext.Current.Request.Files[0].FileName); 
SPFile file = files.Add(library.RootFolder.Url + "/" + strFilename, HttpContext.Current.Request.Files[0].InputStream, true); 

При настройке немедленного предупреждения (или ежедневного предупреждения) для библиотеки документов предупреждение запускается, как только документ добавляется в библиотеку.Добавление документа в библиотеку документов

Мой код разрушает наследование после добавления документа, поэтому он может изменять права людей вплоть до уровня предмета.

Проблема связана с предупреждениями. Немедленные/ежедневные оповещения отправляют людям сообщения о том, что документ добавлен, к которому у них нет доступа. Немедленные оповещения понятны, но ежедневная работа должна работать правильно, потому что я сбросил разрешения до того, как будет запущено ежедневное предупреждение.

Есть ли способ установить разрешения для объекта перед добавлением документа в библиотеку?

Заранее благодарен!

ответ

0

Мне не удалось установить разрешения элементов для элемента, которого еще нет в библиотеке документов.

После попытки создать папку с черновиком, которую никто не может видеть, затем установите для нее правильные разрешения для элемента, выполнив копию в корневой каталог библиотеки документов, разрешения разрешений не сохраняются на скопированном элементе. Если вы сделаете переход, событие добавления элементов для пользовательских предупреждений не было вызвано, потому что оно больше не является новым.

Для этого проекта пользовательское задание таймера может быть лучше всего подходит.

Смежные вопросы