Асинхронный загрузчик файлов с MVC3 / .NET? - PullRequest
2 голосов
/ 16 октября 2011

каждый Я студент и новичок в .NET и особенно в разработке MVC3.

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

Учитывая, что загружаемый файл может быть большого размера, я хочу использовать Asynchronous File Uploader, который может показать ход загрузки файла, чтобы пользователь не чувствовал себя зависшим и застрявшим во время загрузки файлов наназад, я хочу, чтобы пользователь был вовлечен и информирован о ходе загрузки файла.Я ищу несколько возможных вариантов, таких как uploadify, но не нашел большого успеха в их использовании.

  • Я хочу знать, есть ли какие-нибудь полезные плагины .net / MVC, которые можно использовать дляасинхронно загружать эти файлы?

  • Было бы лучше иметь некоторые параметры, такие как проверка расширения / размера файла.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 16 октября 2011

технически, мультизагрузка с некоторым индикатором прогресса не является функциональностью на стороне сервера, поэтому вы не можете получить «плагин MVC» для этого. Вы должны реализовать какое-нибудь клиентское решение, обычно основанное на Flash, Silverlight, HTML5 или около того - их много. На стороне сервера вы должны просто получить этот файл как обычно (или объединить его из «чанков», если он отправляется в «разделенном» режиме - см. Руководства по этому вопросу).

Так что больше похоже на «плагин MVC», вам нужно искать «плагин Jquery» или «multiupload» в целом.

Например, посмотрите здесь: http://superdit.com/2010/06/29/10-jquery-ajax-file-uploader-plugins/

1 голос
/ 17 января 2012

Uploadify - действительно хороший вариант, на мой взгляд, если вы не возражаете против вспышки.Моя компания сейчас использует его на одном из наших сайтов, и он работает очень хорошо.Есть очень немного других вариантов, чтобы фактически ограничить типы файлов, которые может выбрать пользователь.Надеюсь, скоро появятся хорошие загрузчики HTML5, которые справятся с этим, но, насколько я знаю, в настоящее время их нет.Я бы хотел быть неправым.Кроме того, даже если был подходящий загрузчик HTML5, вы не сможете его использовать, если на вашем веб-сайте есть пользователи, использующие браузеры, не поддерживающие HTML5.

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

Обновление: Что касается «ошибки HTTP», я подумал об этом длянемного времениЕдинственный раз, когда я сталкивался с такой ошибкой, был случай, когда пользователь не был аутентифицирован.Например, они перешли непосредственно на страницу без входа в систему. Это не должно быть возможно на вашем сайте, но при простом тестировании с загрузчиком, первоначально на страницах, мы не заставляли пользователя проходить аутентификацию, и эта ошибка появилась.После того, как мы заставили пользователя пройти аутентификацию (вход) перед просмотром страницы, эта ошибка была устранена.

0 голосов
/ 08 июня 2013

Этот загрузчик jQuery выглядит действительно хорошо и должен также тренироваться с любой версией asp.net mvc

...