Вопрос

Ограничение на размер вложенного файла

добрый день!

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

я сделала событийный подпроцесс на inserting, выглядит он следующим образом

int size = Entity.GetTypedColumnValue("Size");

if (size > 1048576)

    throw new Exception("Размер вложенного файла превышает 1 Мб");

return true;

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



 как сделать так, чтобы пользователь видел текст ошибки из кода ?

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

Нравится

3 комментария

оказалось следующее: когда закидываешь файл через кнопку добавить(знак скрепки), то все корректно - выходит моя ошибка. если просто закидываешь в область  - то выходит ошибка, которая ни о чем не говорит.

сделала следующее:

заместила filedetail, отловила ошибку в xhr в методе onFileComplete  и сделала свою обработку. 

можно ограничить средствами самого веб-сервера.

в файле конфигурации приложения

Terrasoft.WebApp\Web.config

смотрите ноду 

<requestLimits maxAllowedContentLength="104857600" />

это лимит для загружаемых на сервер данных в байтах

Севостьянов Илья Сергеевич пишет:

можно ограничить средствами самого веб-сервера.

спасибо.

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

 

Показать все комментарии