Можно ли ограничить размер библиотеки изображений - PullRequest
0 голосов
/ 14 марта 2011

в sharepoint 2007 у нас есть библиотека изображений, которая использует около 2 ГБ пространства

нам нужно ограничить библиотеку, чтобы пользователь не мог добавлять больше изображений, если она составляет 2,5 ГБ, возможно ли это в sharePoint и как?

PLZ Help

С уважением.

1 Ответ

3 голосов
/ 14 марта 2011

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

После достижения порога вы можете изменить разрешения в списке.

В качестве альтернативы вы можете выполнить эту проверку в методе ItemAdding и установить properties.Cancel = true в случае достижения порога.

Я не знаю, из-за чего самый эффективный подход, так как проверка размеров файлов каждого элемента списка каждый раз, когда добавляется новый, будет дорогой:

long totalSize = 0;
foreach(SPFile file in list.RootFolder.Files){ 
    totalSize += file.Length; // or TotalLength, see MSDN
}

Я думаю, что я просто сохраню текущее использование в переменной в SPList.RootFolder.Properties и обновлю его в методах ItemAdded / ItemUpdated приемника события элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...