Valums文件上传器无法找到我的控制器操作

时间:2013-02-13 17:59:09

标签: c# asp.net-mvc file-upload valums-file-uploader

GitHub,他们有asp.net mvc演示。不是完整的项目,而是控制器/类/活页夹。

我下载了他们的代码,有没有依赖演示和jquery演示的测试文件夹。

我还在他们的演示中制作了我的控制器/动作。

 public partial class UploadController : MyController
{
        [HttpPost]
        public ActionResult UploadFile(FineUpload upload, string extraParam1, int extraParam2)
        {
            // asp.net mvc will set extraParam1 and extraParam2 from the params object passed by Fine-Uploader

            var dir = @"e:\temp\";
            var filePath = Path.Combine(dir, upload.Filename);
            try
            {
                upload.SaveAs(filePath);
            }
            catch (Exception ex)
            {
                return new FineUploaderResult(false, error: ex.Message);
            }

            // the anonymous object in the result below will be convert to json and set back to the browser
            return new FineUploaderResult(true, new { extraInformation = 12345 });
        }
}

在他们的测试演示页面上,我将端点参数更改为

 endpoint: "http://localhost:60784/upload/uploadfile"

但是,嘿,我怎么得到像

这样的例外
A public action method 'uploadfile' was not found on controller     'MaNameSpace.Controllers.UploadController'.

1 个答案:

答案 0 :(得分:1)

您可以做两件事:

  1. 尝试向端点网址添加最后一个斜杠:http://localhost:60784/upload/uploadfile/

  2. [HttpPost]更改为[HttpGet]并查看操作方法是否被点击。

  3. 在网络选项卡上打开Firefox上的Firebug,您可以查看正在向服务器发出的请求,并检查文件上传插件是否发出了Get或Post请求。