Javascript ASP.NET MVC核心WEB API上载文件显示使用Angular JS的错误

Javascript ASP.NET MVC核心WEB API上载文件显示使用Angular JS的错误,javascript,asp.net,angularjs,asp.net-core-mvc,asp.net-core-webapi,Javascript,Asp.net,Angularjs,Asp.net Core Mvc,Asp.net Core Webapi,这是我的客户端html(我使用了ng文件上传) 这是我的服务器端 private IHostingEnvironment hostingEnv ; public FileUploadController(IHostingEnvironment env) { this.hostingEnv = env; } [HttpPost] public async Task<IActionResult> PostProfilePicture(ICol

这是我的客户端html(我使用了ng文件上传)

这是我的服务器端

 private IHostingEnvironment hostingEnv ;

    public FileUploadController(IHostingEnvironment env)
    {
        this.hostingEnv = env;
    }

[HttpPost]
public async Task<IActionResult> PostProfilePicture(ICollection<IFormFile> files) // Here i get file count 0 on tool tip
{
    var uploads = Path.Combine(hostingEnv.WebRootPath, "uploads");
    foreach (var file in files)
    {
        if (file.Length > 0)
        {
            using (var fileStream = new FileStream(Path.Combine(uploads, file.FileName), FileMode.Create))
            {
                await file.CopyToAsync(fileStream);
            }
        }
    }
    return null;
}
私有IHostingEnvironment主机;
公共文件上载控制器(IHostingEnvironment env)
{
this.hostingEnv=env;
}
[HttpPost]
public async Task PostProfilePicture(ICollection files)//这里我在工具提示中得到了文件计数0
{
var uploads=Path.Combine(hostingEnv.WebRootPath,“uploads”);
foreach(文件中的var文件)
{
如果(file.Length>0)
{
使用(var fileStream=newfilestream(Path.Combine(uploads,file.FileName),FileMode.Create))
{
等待file.CopyToAsync(fileStream);
}
}
}
返回null;
}

这里我得到了文件上传错误,我在网上搜索过,所有我得到的代码,但它不起作用,任何人都可以帮助并指出我在这里做错了什么。

您在URL中调用的操作结果名称是“文件上传”,服务器端操作结果名称是“PostProfilePicture”。您需要在两侧保持相同的名称,或者可以在服务器端代码中的httppost上方添加路由名称

[Route("api/FileUpload")]
[HttpPost]

您正在URL中调用的操作结果名称为“FileUpload”,服务器端操作结果名称为“PostProfilePicture”。您需要在两侧保持相同的名称,或者可以在服务器端代码中的httppost上方添加路由名称

[Route("api/FileUpload")]
[HttpPost]
是的,我得到了答案

public async Task<IActionResult> Post(ICollection<IFormFile> files)
{
    var v = Request.Form.Files[0];
    var uploads = Path.Combine(hostingEnv.WebRootPath, "uploads");


            using (var fileStream = new FileStream(Path.Combine(uploads, v.FileName), FileMode.Create))
            {
                await v.CopyToAsync(fileStream);
            }
    return null;
}
公共异步任务发布(ICollection文件)
{
var v=Request.Form.Files[0];
var uploads=Path.Combine(hostingEnv.WebRootPath,“uploads”);
使用(var fileStream=newfilestream(Path.Combine(uploads,v.FileName),FileMode.Create))
{
等待v.CopyToAsync(文件流);
}
返回null;
}
从请求中取出文件并上传,谢谢我得到了答案

public async Task<IActionResult> Post(ICollection<IFormFile> files)
{
    var v = Request.Form.Files[0];
    var uploads = Path.Combine(hostingEnv.WebRootPath, "uploads");


            using (var fileStream = new FileStream(Path.Combine(uploads, v.FileName), FileMode.Create))
            {
                await v.CopyToAsync(fileStream);
            }
    return null;
}
公共异步任务发布(ICollection文件)
{
var v=Request.Form.Files[0];
var uploads=Path.Combine(hostingEnv.WebRootPath,“uploads”);
使用(var fileStream=newfilestream(Path.Combine(uploads,v.FileName),FileMode.Create))
{
等待v.CopyToAsync(文件流);
}
返回null;
}

从请求中获取文件并上传,谢谢

您好,您在实现它时看到了什么错误?在客户端加载文件时看到了什么错误您好,在客户端加载文件时看到了什么错误?它是我的web api控制器,它正在路由到此方法,但没有文件它是我的web api控制器,,它正在路由到此方法,但没有文件