上载的文件未显示在asp.net web api控制器中

上载的文件未显示在asp.net web api控制器中,asp.net,angular,Asp.net,Angular,我试图建立一个简单的图像上传程序,但它不工作 我的代码如下。如果有人能弄明白这对我来说是救命的 谢谢 这是我的角度发球 postFiles(caption: string, filetouplaod: File) { const headerss = new HttpHeaders({ 'Content-Type': 'multipart/form-data', 'Authorization': this.globalsr.PrimaryTocken

我试图建立一个简单的图像上传程序,但它不工作 我的代码如下。如果有人能弄明白这对我来说是救命的 谢谢

这是我的角度发球

 postFiles(caption: string, filetouplaod: File) {

    const headerss = new HttpHeaders({
        'Content-Type': 'multipart/form-data',
        'Authorization': this.globalsr.PrimaryTocken
    })

    let file: File = filetouplaod;

    let formData: FormData = new FormData();
    formData.append('uploadFile', file, file.name);
    return this._http.post(`${this.globalsr.PrimaryAPI}Uploader/UploadSingleImage`, formData, {headers:headerss})
}
身份验证令牌

private\u primaryTocken:string="持票人研究者们在一个新的研究项目中使用了一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个研究项目——一个研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的研究项目——一个新的目标——一个研究项目——在一个新的项目——一个新的项目——一个项目——一个研究Pz_ljoYM1rVRF-CXwQgBOKiKmSi9h65DUAsqaQY8GLXB69XQPMOM SCXLN4YVWSDKNYZLAYUVLL3EHQGJSLS6XQIUW36SPSSFTN9RMMRQR3DPIJOGN61U7KF5FQCRAHMJJ\u JPOO8AXOH1EGKOV0ARERB6GMDVT3UM\u f8-Dzi0i8vtZrstg”

我的Web api控制器

    [Authorize]
    [HttpPost]
    [Route("UploadSingleImage")]
    public HttpResponseMessage UploadSingleImage()
    {
        var exMessage = string.Empty;
        try
        {
            string uploadPath = "~/content/upload";
            HttpPostedFile file = null;
            if (HttpContext.Current.Request.Files.Count > 0)
            {
                file = HttpContext.Current.Request.Files.Get("file");
            }
            // Check if we have a file
            if (null == file)
                return Request.CreateResponse(HttpStatusCode.BadRequest, new
                {
                    error = true,
                    message = "Image file not found"
                });

            // Make sure the file has content
            if (!(file.ContentLength > 0))
                return Request.CreateResponse(HttpStatusCode.BadRequest, new
                {
                    error = true,
                    message = "Image file not found"
                });

            if (!Directory.Exists(HttpContext.Current.Server.MapPath(uploadPath)))
            {
                // If it doesn't exist, create the directory
                Directory.CreateDirectory(HttpContext.Current.Server.MapPath(uploadPath));
            }

            //Upload File
            file.SaveAs(HttpContext.Current.Server.MapPath($"{uploadPath}/{file.FileName}"));

        }
        catch (Exception ex)
        {
            exMessage = ex.Message;
        }
        return Request.CreateResponse(HttpStatusCode.BadRequest, new { error = true, message = exMessage == string.Empty ? "An unknown error occured" : exMessage });
    }
但情况是,这个文件计数一直是零

HttpContext.Current.Request.Files.Count
所以我已经使用postman和WebAPI方法发送了准确的数据,效果很好。
请提供任何想法文件无法从文件输入元素获取您试图上载的文件。请使用cosole日志检查文件TOUPLAOD的内容

 let file: File = filetouplaod;

假设fileInput是输入元素,那么您应该分配如下内容:
filetouplaod=fileInput.files[0]

不要设置“内容类型”:“多部分/表单数据”-只需删除它即可。
通常在它之后,我删除了我所有请求中的
内容类型
,并将其替换为
'Accept':'application/json'

,谢谢您的评论,但这是我在这里发布的服务方法。我正在从调用方法发送相关文件。我记录了它,它显示了良好的状态。我确信他在进入之前正在执行此步骤函数-看看函数的参数。对我来说,我的问题不是让file:file=filetouplaod;作为方法的参数。嗨,我有同样的问题,你知道怎么做吗?好的,我解决了-回答如下