C# formData.append不是一个函数

C# formData.append不是一个函数,c#,jquery,ajax,asp.net-mvc,C#,Jquery,Ajax,Asp.net Mvc,我试图让ajax文件上传正常工作,但是我在这里找到了一个例子,但试图用谷歌搜索这个错误并没有产生任何相关的结果 原始示例: 这导致Chrome控制台出现以下错误: Uncaught TypeError: formData.append is not a function at jQuery.fn.init.callback (14:1336) at processCallback (bootbox.js:86) at HTMLButtonElement.<anony

我试图让ajax文件上传正常工作,但是我在这里找到了一个例子,但试图用谷歌搜索这个错误并没有产生任何相关的结果

原始示例:

这导致Chrome控制台出现以下错误:

Uncaught TypeError: formData.append is not a function
    at jQuery.fn.init.callback (14:1336)
    at processCallback (bootbox.js:86)
    at HTMLButtonElement.<anonymous> (bootbox.js:568)
    at HTMLDivElement.dispatch (jquery-3.1.1.js:5201)
    at HTMLDivElement.elemData.handle (jquery-3.1.1.js:5009)
…并在我的控制器(C#MVC ASP.NET)中存储转换后的字节数组,如下所示:

byte[] fileBytes = Encoding.UTF8.GetBytes(data);
我将此文件存储在Azure Blob存储中,该存储将文件检测为内容类型
应用程序/octet流
。 使用MS storage explorer将同一文件上载到同一blob存储容器会存储不同大小和正确内容类型的文件


我现在完全不知道下一步该怎么办。

我最终发现了问题所在。。 我们正在使用的另一个库使用名为
FormData(){…}


重命名该函数已解决问题。

console.log(formData)显示了什么?我从页面上的另一个表单获得了一个具有值的对象。我会在这里详细说明一下——页面上有一个主表单和一个弹出窗口(使用bootbox.js)显示另一个[child]表单。即使上面的代码针对的是正确的表单,我还是从主表单中获取值。一个:
formData
不是jquery对象,或者两个:
file
不是有效的参数,可以检查这些参数并使用
var file = document.getElementById('Document').files[0];

var reader = new FileReader();
reader.readAsText(file);
reader.onload = function (event) {

var result = event.target.result;

var fileName = file.name;
var fileMimetype = file.type;

$.post(
    url,
    {
        id: breakdownItemId,        
        data: result,
        mime: fileMimetype,
        name: fileName
    },
    function (response) {

        console.log(response);

    }
);
byte[] fileBytes = Encoding.UTF8.GetBytes(data);