C# 将文件从wpf应用程序上载到web api

C# 将文件从wpf应用程序上载到web api,c#,asp.net-web-api,C#,Asp.net Web Api,我正在尝试将一个文件(图像)从WPF应用程序上载到Web Api控制器。在控制器中,我将文件转换为位数组,并将其保存在DB中。我使用以下代码将文件发送到web api var client = new WebClient(); client.UploadFile("URI", "POST", "filepath"); 在我的web api中,我正在检查传入的请求是否为MimemultipartContent if (Request.Content.IsMimeMultipartContent(

我正在尝试将一个文件(图像)从WPF应用程序上载到Web Api控制器。在控制器中,我将文件转换为位数组,并将其保存在DB中。我使用以下代码将文件发送到web api

var client = new WebClient();
client.UploadFile("URI", "POST", "filepath");
在我的web api中,我正在检查传入的请求是否为MimemultipartContent

if (Request.Content.IsMimeMultipartContent())
这个很好用。但是当我尝试发送数据缓冲区而不是文件时,我被困在了如何编写服务器端代码的问题上

var bytes = File.ReadAllBytes('filepath');
client.UploadData("URI", "POST", bytes);

明白了。其实很简单

        var task = Request.Content.ReadAsByteArrayAsync();
        var bytes = task.Result;
        Image img = new Image();
        img.Id = Guid.NewGuid();
        img.ImageData = bytes;
        db.Images.Add(img);
        db.SaveChanges();