Я бы сгенерировал исключение HTTPRequestException и установил бы код ответа http, который имеет для вас наибольшее значение.
Если бы я был другим разработчиком, смотрящим на ваш код, для меня было бы разумно видеть FileContentResult как конкретныйвведите, а затем также сгенерируйте исключение HTTPRequestException для недопустимых параметров.
[HttpGet("path")]
[Produces("image/jpeg", "image/webp", "text/plain")]
public async Task<ActionResult<FileContentResult>> Get(/*parameters*/)
{
if(/*invalid parameters*/)
{
throw new HttpResponseException(/* invalid parameters message */, HttpStatusCode.BadRequest)
}
Byte[] image = GetImage();
return File(image, "image/jpeg");
}
Соглашение также важно для меня, и я думаю, что выполнение этого способа является соглашением, которое я видел в нескольких кодовых базах.