AngulaJS前端不会将数据传递给C#控制器

时间:2018-08-28 06:58:15

标签: c# angularjs upload

现在我正在使用c#后端和angularjs前端的Web应用程序中工作。我正在使用网络API,控制器等。.一切正常,但现在出现了问题。

我正在尝试将两个文件上传到我的azure blob中,它可以从POSTMAN正常运行,但是当我尝试使用angularjs和前端时,它为空。

这是一些图片,我的代码位于该程序之前

我的C#控制器

    [HttpPost]
    [Route("{id}")]
    public async Task<IActionResult> UploadFile (int id, IFormFile fileA, IFormFile fileQ)
    {

        CloudBlockBlob blockBlob = _container.GetBlockBlobReference(fileA.FileName);
        CloudBlockBlob blockBlob2 = _container.GetBlockBlobReference(fileQ.FileName);

        using (var fileStream = fileA.OpenReadStream())
        {
            await blockBlob.UploadFromStreamAsync(fileStream);
        }

        using (var fileStream = fileQ.OpenReadStream())
        {
            await blockBlob2.UploadFromStreamAsync(fileStream);
        }

        var question = db.Question.Find(id);

        if (question != null)
        {
            question.AttachedAnswer = fileA.FileName;
            question.AttachedQuestion = fileQ.FileName;
        }

        db.SaveChanges();
        return Ok(question);

    }

和我的angular js函数

    function uploadFile(id, answer, question) {
        return httpService.post('api/upload/' + id, { fileA: answer, fileQ: question });
    }


   dataContext.uploadFile(vm.idquestion, vm.attachedA, vm.attachedQ).then(
      function (response) {
         console.log('fisiere');
      }, 
       function (error) {
         console.log(error);
      }
    );

这是调试过程中的一些图片

enter image description here

enter image description here

任何帮助都会很棒!谢谢!!!

0 个答案:

没有答案