fix json enum

This commit is contained in:
FrigaT
2026-04-15 19:16:44 +03:00
parent cbb0cb8c8e
commit ba13199ca2
5 changed files with 19 additions and 5 deletions

View File

@@ -9,6 +9,7 @@ using PlaylistShared.Api.Entities;
using PlaylistShared.Api.Services; using PlaylistShared.Api.Services;
using System.IdentityModel.Tokens.Jwt; using System.IdentityModel.Tokens.Jwt;
using System.Text; using System.Text;
using System.Text.Json.Serialization;
namespace PlaylistShared.Api; namespace PlaylistShared.Api;
@@ -113,7 +114,11 @@ public class Program
}); });
}); });
builder.Services.AddControllers(); builder.Services.AddControllers()
.AddJsonOptions(options =>
{
options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter());
});
builder.Services.AddEndpointsApiExplorer(); builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen(); builder.Services.AddSwaggerGen();

View File

@@ -93,7 +93,7 @@
_isSearching = true; _isSearching = true;
try try
{ {
var url = $"/api/yandexsearch/tracks?query={Uri.EscapeDataString(query)}&type={Uri.EscapeDataString(type.ToString())}&limit=20"; var url = $"/api/yandexsearch/tracks?query={Uri.EscapeDataString(query)}&searchType={Uri.EscapeDataString(type.ToString())}&limit=20";
if (!string.IsNullOrEmpty(ShareToken)) if (!string.IsNullOrEmpty(ShareToken))
url += $"&shared_id={Uri.EscapeDataString(ShareToken)}"; url += $"&shared_id={Uri.EscapeDataString(ShareToken)}";
if (byId) if (byId)

View File

@@ -1,6 +1,9 @@
namespace PlaylistShared.Shared.Enums; using System.Text.Json.Serialization;
namespace PlaylistShared.Shared.Enums;
/// <summary>Кто может выполнять действие (добавление/удаление).</summary> /// <summary>Кто может выполнять действие (добавление/удаление).</summary>
[JsonConverter(typeof(JsonStringEnumConverter))]
public enum EditPermission public enum EditPermission
{ {
/// <summary>Все, включая неавторизованных (но для выполнения действия нужна авторизация, так как API требует токен).</summary> /// <summary>Все, включая неавторизованных (но для выполнения действия нужна авторизация, так как API требует токен).</summary>

View File

@@ -1,8 +1,11 @@
namespace PlaylistShared.Shared.Enums; using System.Text.Json.Serialization;
namespace PlaylistShared.Shared.Enums;
/// <summary> /// <summary>
/// Типы поиска треков в Яндекс.Музыке, которые можно указать при поисковом запросе. /// Типы поиска треков в Яндекс.Музыке, которые можно указать при поисковом запросе.
/// </summary> /// </summary>
[JsonConverter(typeof(JsonStringEnumConverter))]
public enum TrackSearchType public enum TrackSearchType
{ {
All, All,

View File

@@ -1,6 +1,9 @@
namespace PlaylistShared.Shared.Enums; using System.Text.Json.Serialization;
namespace PlaylistShared.Shared.Enums;
/// <summary>Кто может просматривать плейлист.</summary> /// <summary>Кто может просматривать плейлист.</summary>
[JsonConverter(typeof(JsonStringEnumConverter))]
public enum ViewPermission public enum ViewPermission
{ {
/// <summary>Все, включая неавторизованных.</summary> /// <summary>Все, включая неавторизованных.</summary>