Files
SkyArtShop/Controllers/DiagnosticsController.cs

35 lines
846 B
C#
Raw Normal View History

using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using SkyArtShop.Models;
using SkyArtShop.Services;
namespace SkyArtShop.Controllers;
[Route("diagnostics")]
public class DiagnosticsController : Controller
{
private readonly MongoDBService _mongoService;
public DiagnosticsController(MongoDBService mongoService)
{
_mongoService = mongoService;
}
[HttpGet("products")]
public async Task<IActionResult> Products()
{
var data = (await _mongoService.GetAllAsync<Product>("Products")).Select((Product p) => new
{
Id = p.Id,
Name = p.Name,
ImageUrl = p.ImageUrl,
ImagesCount = (p.Images?.Count ?? 0),
FirstImage = p.Images?.FirstOrDefault(),
HasImageUrl = !string.IsNullOrEmpty(p.ImageUrl),
HasImages = (p.Images != null && p.Images.Any())
}).ToList();
return Json(data);
}
}