ASP.NET Web API送信受信ピクチャリファレンス
プロジェクト開発中に一つのASPに出会った.NET WebAPI 4.0受信、画像送信の問題.自分で1つの解决方法を模索して、今みんなに分かち合って、みんなが后でこのような需要に出会って参考にすることができることを望みます.
受信(シングルファイル):
送信(アドレスによるリダイレクト):
受信(シングルファイル):
string fullPath = HttpContext.Current.Server.MapPath("~/Images");
//
var task = Request.Content.ReadAsMultipartAsync();
task.Wait();
var file = task.Result;
//
var oldfileName = file.Contents[0].Headers.ContentDisposition.FileName.Replace("\"","").Trim();
//
var logoFilePath = Path.Combine(HttpContext.Current.Server.MapPath("~/Images/Logo"), oldfileName);
//
var fileStream = File.Create(logoFilePath);
//
await file.Contents.ElementAt(0).CopyToAsync(fileStream);
fileStream.Close();
return Ok();
送信(アドレスによるリダイレクト):
//
ISchoolRepository schoolRepository =
RepositoryFactory.GetRepository<ISchoolRepository, School>(null, connstr);
//
var school = schoolRepository.FindBy(schoolID);
if(school==null)
{
//
return NotFound();
}
else
{
//
if(string.IsNullOrEmpty(school.LogoName))
{
//
var defaultImageUrl = string.Format("{0}://{1}:{2}/Images/Thumbnails/School.png",
"https",
Request.RequestUri.Host,
Request.RequestUri.Port
);
//
return Redirect(defaultImageUrl);
}
else
{
// URL
var trainingImageUrl = string.Format("{0}://{1}:{2}/Images/Thumbnails/{3}.png",
"https",
Request.RequestUri.Host,
Request.RequestUri.Port,
System.IO.Path.GetFileNameWithoutExtension(school.LogoName)
);
//
return Redirect(trainingImageUrl);
}
}