Как изменить папку загрузки динамически
Я использую контроллер загрузки файлов Backload в моей сборке CustomerPortal с MVC4. В CustomerPortal вы можете добавить SupportCalls. В SupportCall вы можете прикрепить файлы. Каждый SupportCall имеет свой Guid.
Файл web.backload.default.config содержит расположение по умолчанию для файла "~/Files". Однако я хочу, чтобы местоположение файла было разным для каждого SupportCall. Например: "~/Files/d764578d-2f13-4820-bf1f-3d4427aedf22", где Guid отличается каждый раз.
Как я могу этого достичь?
2 ответа
Я нашел ответ на свой вопрос здесь: https://github.com/blackcity/Backload/wiki/Example-06
<form id="fileupload"
action="/Backload/UploadHandler"
method="POST"
enctype="multipart/form-data">
<input type="hidden"
name="objectContext"
value="@Html.ViewBag.Id" />
</form>`
Просто нужно было добавить скрытое поле с идентификатором
Вы правы, для этого используется objectContext. Одно замечание: вы можете установить клиентскую сторону objectContext так же, как вы делаете, или серверную сторону в событии (например, IncomingRequest) или расширении. Если вы хотите получить файлы (запрос GET) для конкретного пользователя, обязательно отправьте objectContext вместе с запросом (URL или формой) или установите его на стороне сервера.