У меня есть сценарий, в котором мои пользователи должны добавить фотографию на мой сайт. Итак, они используют <input type="file" />
, они видят небольшой предварительный просмотр, затем им нужно перейти на следующую страницу, чтобы подтвердить все.
Я не хочу сохранять загруженную фотографию, пока они не отправят форму подтверждения на странице подтверждения. Это не та же страница, что и вход для загрузки файла.
HTML + Бритва
<div class="control-group">
@Html.LabelFor(m => m.SmallLogo, new { @class = "control-label" })
<div class="controls">
@Html.TextBoxFor(m => m.SmallLogo, new { type = "file" })
</div>
</div>
Модель
namespace Models.Registration
{
[Serializable]
public class Theme
{
[NonSerialized]
private HttpPostedFileBase _SmallLogo;
[DisplayName("Small Logo: ")]
public HttpPostedFileBase SmallLogo
{
get { return _SmallLogo; }
set { _SmallLogo = value; }
}
}
}
Я не уверен, что мне нужно отправлять сообщения с моего контроллера, но в основном я обновляю модель, когда страница (форма) отправляется через HTTP POST. Сначала при использовании отладки я мог навести модель, и они показывались бы как HttpPostedFileWrapper
. Затем я изменил тип поля модели на HttpPostedFileBase
, но после этого я получил сообщение об отсутствии достоверности.
Итак, я последовал за некоторыми другими публикациями о создании личного поля, которое можно сериализировать, а затем просто получил и установил это значение. Теперь, когда я приостанавливаю программу после отправки формы, модал просто показывает ноль. Это так хромает.
Если я оставил информацию о том, что вы должны мне помочь, тогда, пожалуйста, спросите, и я достану ее для вас! Помоги мне, чтобы помочь вам, чтобы помочь мне! : D