Rev. | c3a256ccb4a9a5823695d2237d31680b12931560 |
---|---|
Größe | 1,541 Bytes |
Zeit | 2022-11-29 23:54:33 |
Autor | yoshy |
Log Message | [MOD] キャプション書式化機能でキャプションの取得と書式化を行う機能の区別を明確にした
|
using NLog;
using System.Text.Json;
namespace CleanAuLait.Core.Converter
{
#if false
/// <see href="https://mokake.hatenablog.com/entry/2017/09/12/195656">
public static class JsonHelper
{
public static string ToJsonString<T>(this T data)
{
using var stream = new MemoryStream();
var serializer = new DataContractJsonSerializer(typeof(T));
serializer.WriteObject(stream, data);
return Encoding.UTF8.GetString(stream.ToArray());
}
public static T DeserializeJson<T>(this string json)
{
using var stream = new MemoryStream(Encoding.UTF8.GetBytes(json));
var serializer = new DataContractJsonSerializer(typeof(T));
return (T)serializer.ReadObject(stream);
}
}
#else
public static class JsonHelper
{
private static readonly ILogger logger = LogManager.GetCurrentClassLogger();
public static string ToJsonString<T>(this T data)
{
return JsonSerializer.Serialize(data);
}
public static T DeserializeJson<T>(this string json)
{
T obj = default;
try
{
if (!string.IsNullOrEmpty(json))
{
obj = JsonSerializer.Deserialize<T>(json);
}
}
catch (Exception e)
{
logger.Error(e, "json deserialization failed.");
}
return obj;
}
}
#endif
}