Я создаю веб-службу Rest API в виде микросервиса, используя .Net Core Web API, для загрузки изображений в базу данных PostgreSQL. и я хочу создать действие get, чтобы вернуть изображение по идентификатору. Я действительно не знаю, как, поэтому, пожалуйста, любая помощь будет хорошей, по крайней мере, мне нужны руководства, пожалуйста.
Вот мой класс
namespace Upload_images_API.Models
{
public class Image
{
public int ImageId { get; set; }
public byte[] ImageData { get; set; }
}
}
и вот мой контроллер для отправки изображения.
public class ImageController : ControllerBase
{
private readonly ImageDbContext _context;
public ImageController(ImageDbContext context)
{
_context = context;
}
[HttpPost("api/Image/upload")]
public async Task<IActionResult> UploadImage(Image images, List<IFormFile> ImageData)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
foreach (var item in ImageData)
{
if (item.Length > 0)
{
using (var stream = new MemoryStream())
{
await item.CopyToAsync(stream);
images.ImageData = stream.ToArray();
}
}
}
if (images.ImageData == null)
{
return BadRequest("Image should be selected.");
}
_context.Image.Add(images);
_context.SaveChanges();
int imageid = images.ImageId;
return Ok("Image ID:" + imageid);
}
Пожалуйста, любая помощь будет признательна, и большое спасибо.