KendoUI:如何在控制器中重命名上传文件后在javascript中获取新文件名

Nul*_*nce 4 javascript c# asp.net-mvc kendo-ui kendo-upload

我有以下Kendo上传控件

        @(Html.Kendo().Upload()
                      .Name("files")
                      .Async(a => a
                      .Save("SaveBackgroundImage", "Plans")
                      .AutoUpload(true))
                      .Multiple(false)
        .Events(events => events.Success("onSuccess")))
Run Code Online (Sandbox Code Playgroud)

我的控制器:

public ActionResult SaveBackgroundImage(IEnumerable<HttpPostedFileBase> floorplanFiles, string floorplanId)
{
        foreach (var file in files)
        {                   
            string fileName = "ABC.jpg" //this will be random                      
            var physicalPath = Path.Combine(Server.MapPath("~/Images/Floorplans/Fullsize"), fileName);
            file.SaveAs(physicalPath);
        }
    // Return an empty string to signify success
    return Content("");
}
Run Code Online (Sandbox Code Playgroud)

我的javascript:

function onSuccess(e) {
    var filename = getFileInfo(e);
    alert(filename);
}

function getFileInfo(e) {
    return $.map(e.files, function (file) {
        var info = file.name;
        return info;
    }).join(", ");
}
Run Code Online (Sandbox Code Playgroud)

如何在我的javascript中取回"ABC.jpg"作为我的文件名而不是我选择上传的原始文件名?

Nul*_*nce 8

通过在我的控制器中执行此操作解决:

var newImageName = "123.jpg";
return Json(new { ImageName = newImageName  }, "text/plain");
Run Code Online (Sandbox Code Playgroud)

并在onSuccess功能:

function onSuccess(e) {
    var imageName = e.response.ImageName;
}
Run Code Online (Sandbox Code Playgroud)