アップロードしたファイルをデータベース/ memorystreamに保存しようとしていますが、わかりません。ASP .Net Web API RC:Memorystreamへのマルチパートファイルアップロード
私が今持っているすべてはこれです:
public Task<HttpResponseMessage> AnswerQuestion()
{
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
var root = HttpContext.Current.Server.MapPath("~/App_Data");
var provider = new MultipartFormDataStreamProvider(root);
var task = Request.Content.ReadAsMultipartAsync(provider).
ContinueWith<HttpResponseMessage>(t =>
{
if (t.IsFaulted || t.IsCanceled)
{
Request.CreateErrorResponse(HttpStatusCode.InternalServerError, t.Exception);
}
foreach (var file in provider.FileData)
{
Trace.WriteLine(file.Headers.ContentDisposition.FileName);
Trace.WriteLine("Server file path: " + file.LocalFileName);
}
return Request.CreateResponse(HttpStatusCode.OK);
});
return task;
}
しかし、もちろん、この唯一の特定の場所にファイルを保存します。私はMediaStreamに保存するためにMediaTypeFormatterから派生したカスタムクラスで作業しなければならないと思いますが、どうやってそれを行うのか分かりません。
助けてください。前もって感謝します!
を意味するのでしょうか?大容量のファイルがアップロードされている場合は、独自の 'MultipartStreamProvider'実装を記述する必要がありますか? –
'/ do something'ビットはどのように見えますか? – simonlchilds