Webサービスにファイルをストリーミングしようとしています。私のController(ApiController)には、次のようなPost関数があります。
public void Post(Stream stream)
{
if (stream != null && stream.Length > 0)
{
_websitesContext.Files.Add(new DbFile() { Filename = Guid.NewGuid().ToString(), FileBytes= ToBytes(stream) });
_websitesContext.SaveChanges();
}
}
次の手順を実行して、Webクライアントでファイルをストリーミングしようとしています。
public void UploadFileStream(HttpPostedFileBase file)
{
WebClient myWebClient = new WebClient();
Stream postStream = myWebClient.OpenWrite(GetFileServiceUrl(), "POST");
var buffer = ToBytes(file.InputStream);
postStream.Write(buffer, 0,buffer.Length);
postStream.Close();
}
Webサービスをデバッグすると、Post関数に入りますが、ストリームは常にnullです。なぜこれが起こっているのか誰かが知っているのではないかと思っていましたか?