如何使用服务器上传 cordova 文件传输 asp.net

How to upload cordova filetransfer using server asp.net

我正在创建一个 api,它将在上传时从 cordova 文件传输接收文件 plugin.But,我们收到错误消息“[10/19/2016 5:03:33 PM] azad singh : E/FileTransfer: {"target":"http://54.252.109.57:1031/api/Client/SaveDocument","http_status":500,"body":"\"Object reference not set to an instance of an object.\"","code":1 , [2016 年 10 月 19 日 5:03:45 下午] azad singh:Cordova - 相机

    [HttpPost]
    [Route("Uploadfile")]
    public string Uploadfile()
    {
        string msg = "";
        try
        {
            HttpPostedFile file = HttpContext.Current.Request.Files["file"];
            string saveFile = file.FileName;
            //code to save the file

            msg = "File uploaded";


        }
        catch (Exception ex)
        {
            msg = "Could not upload file: " + ex.Message;

        }
        return msg;
    }

请告诉我我的代码哪里遗漏了...

这段代码对我有用...

 [HttpPost]
        [Route("Uploadfile")]
        public UploadFile Uploadfile()
        {
            HttpPostedFile file = HttpContext.Current.Request.Files["file"];
            UploadFile uploadedfile = new UploadFile();
            //HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Accepted);
            try
            {
                if (file == null)
                    return uploadedfile ;
                    //response = Request.CreateResponse(HttpStatusCode.NotFound, "");


                int count; int sum = 0;
                byte[] buffer = new byte[file.ContentLength];
                int length = (int)file.InputStream.Length;
                buffer = new byte[length];

                while ((count = file.InputStream.Read(buffer, sum, length - sum)) > 0)
                    sum += count;

                FileVM fileObj = new FileVM();
                NameValueCollection parameters = HttpContext.Current.Request.Params;
                if (parameters.Keys.Count > 0)
                {
                    fileObj.fileId = "";
                    fileObj.fileName = file.FileName.ToString();
                    fileObj.fileType = file.ContentType;
                    fileObj.filedata = "";

                    fileObj.LastDownLoad = parameters.GetValues("LastDownLoad")[0];

                    ServicecltClients srv = new ServicecltClients();
                    uploadedfile.FileId = srv.InsertDocumentAndRelatedClient(fileObj, buffer);
                    uploadedfile.FileType = fileObj.fileType;
                    //response = Request.CreateResponse<UploadFile>(HttpStatusCode.OK, uploadedfile);
                }
            }
            catch (Exception _ex)
            {
                //response = Request.CreateResponse(HttpStatusCode.InternalServerError, _ex.Message);
                ErrorLog.TraceErrorLog(_ex);
            }
            finally
            {
                file.InputStream.Close();
            }
            return uploadedfile;
        }