Пример плагина загрузки плагина jQuery проекта, реализованного в ASP.NET MVC3

Мне нужно реализовать в моем проекте ASP.NET MVC3 плагин загрузки файла jQuery:

http://blueimp.github.com/jQuery-File-Upload/

Я был Googling, и я не нашел целый проект, только фрагменты кода. Я не знаю, как его реализовать.

Может кто-нибудь мне помочь? Может ли кто-нибудь сказать мне, где я могу загрузить образец проекта или код?

Ответы

Ответ 1

Я создал проект проекта ASP.NET MVC 3 на GitHub, в котором показано, как использовать полную функциональность плагина, включая удаление и скачать.

Ответ 2

Вы прочитали документацию плагина, который вы пытаетесь использовать? Вы попробовали базовые функции плагина? Вы пытались создать новое приложение ASP.NET MVC 3 в Visual Studio с использованием шаблона по умолчанию?

Вы пытались написать простой контроллер:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Index(IEnumerable<HttpPostedFileBase> files)
    {
        foreach (var file in files)
        {
            var filename = Path.Combine(Server.MapPath("~/App_Data"), file.FileName);
            file.SaveAs(filename);
        }
        return Json(files.Select(x => new { name = x.FileName }));
    }
}

и соответствующее представление:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="@Url.Content("~/Scripts/blueimp/js/vendor/jquery.ui.widget.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.iframe-transport.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.fileupload.js")" type="text/javascript"></script>

<script type="text/javascript">
    $(function () {
        $('#fileupload').fileupload({
            dataType: 'json',
            url: '@Url.Action("index")',
            done: function (e, data) {
                $.each(data.result, function (index, file) {
                    $('<p/>').text(file.name).appendTo(document.body);
                });
            } 
        });
    });
</script>

<input id="fileupload" type="file" name="files" multiple="multiple"/>

Если вы этого не сделали, я приглашаю вас сделать это.