Javascript 在HTML页面中上载图像并将其发送到WebAPI

Javascript 在HTML页面中上载图像并将其发送到WebAPI,javascript,c#,ajax,asp.net-web-api,file-upload,Javascript,C#,Ajax,Asp.net Web Api,File Upload,我想通过点击按钮手动上传图像,然后将其发送到WebAPI并获得相应的响应 这是一个.html页面 <script> function getdata() { var data = new FormData(); var files = $("#fileUpload").get(0).files; var complexobj = { filetosend: files[0] };

我想通过点击按钮手动上传图像,然后将其发送到WebAPI并获得相应的响应

这是一个.html页面

<script>
    function getdata() {
        var data = new FormData();
        var files = $("#fileUpload").get(0).files;
        var complexobj = {
            filetosend: files[0]
        };
        var obj = { Mydata: complexobj };
        var data2send =  JSON.stringify(obj);
        $.ajax({
            type: "POST",
            url: 'http://localhost:3469/api/values',
            data: data2send,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            processdata: false,
        }).done(function (data) {
            document.getElementById("label").innerHTML = data;
        });

    }
</script>
....
....
....
....
<input id="fileUpload" type="file" />
这是我的ValuesController.cs文件

[SwaggerOperation("Create")]
    [SwaggerResponse(HttpStatusCode.Created)]
    public async Task<HttpResponseMessage> Post([FromBody]Mydata value)
    {
        Bitmap input = value.filetosend;
        string[] output = await EvaluateCustomDNN(input);
        return Request.CreateResponse(HttpStatusCode.OK, output);
    }
[大摇大摆的操作(“创建”)]
[SwaggerResponse(HttpStatusCode.Created)]
公共异步任务发布([FromBody]Mydata值)
{
位图输入=value.filetosend;
字符串[]输出=等待EvaluateCustomDNN(输入);
返回Request.CreateResponse(HttpStatusCode.OK,输出);
}

我收到响应错误500,我尝试在VisualStudio中使用断点调试它,但仍然无法调试它。您能帮助我吗?

是的,这是一个WebApi,我无法真正更改值controller.cs,我只想通过单击按钮将位图文件发送到API。有简单的代码吗?我试着创建一个类,这样我可以发送一个复杂的数据,然后在服务器端提取它,但没有成功。
[SwaggerOperation("Create")]
    [SwaggerResponse(HttpStatusCode.Created)]
    public async Task<HttpResponseMessage> Post([FromBody]Mydata value)
    {
        Bitmap input = value.filetosend;
        string[] output = await EvaluateCustomDNN(input);
        return Request.CreateResponse(HttpStatusCode.OK, output);
    }