mirror of
https://github.com/JKorf/CryptoExchange.Net
synced 2025-12-14 18:00:26 +00:00
Added resolver name to datetime/bool parser warnings
This commit is contained in:
parent
21872f818a
commit
4be986ebe7
@ -48,7 +48,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
if (string.IsNullOrEmpty(value))
|
if (string.IsNullOrEmpty(value))
|
||||||
{
|
{
|
||||||
if (typeToConvert == typeof(bool))
|
if (typeToConvert == typeof(bool))
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("Received null bool value, but property type is not a nullable bool");
|
LibraryHelpers.StaticLogger?.LogWarning("Received null bool value, but property type is not a nullable bool. Resolver: {Resolver}", options.TypeInfoResolver?.GetType()?.Name);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
if (reader.TokenType == JsonTokenType.Null)
|
if (reader.TokenType == JsonTokenType.Null)
|
||||||
{
|
{
|
||||||
if (typeToConvert == typeof(DateTime))
|
if (typeToConvert == typeof(DateTime))
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("DateTime value of null, but property is not nullable");
|
LibraryHelpers.StaticLogger?.LogWarning("DateTime value of null, but property is not nullable. Resolver: {Resolver}", options.TypeInfoResolver?.GetType()?.Name);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -63,7 +63,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ParseFromString(stringValue!);
|
return ParseFromString(stringValue!, options.TypeInfoResolver?.GetType()?.Name);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -112,9 +112,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Parse a string value to datetime
|
/// Parse a string value to datetime
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="stringValue"></param>
|
public static DateTime ParseFromString(string stringValue, string? resolverName)
|
||||||
/// <returns></returns>
|
|
||||||
public static DateTime ParseFromString(string stringValue)
|
|
||||||
{
|
{
|
||||||
if (stringValue!.Length == 12 && stringValue.StartsWith("202"))
|
if (stringValue!.Length == 12 && stringValue.StartsWith("202"))
|
||||||
{
|
{
|
||||||
@ -125,7 +123,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
|| !int.TryParse(stringValue.Substring(8, 2), out var hour)
|
|| !int.TryParse(stringValue.Substring(8, 2), out var hour)
|
||||||
|| !int.TryParse(stringValue.Substring(10, 2), out var minute))
|
|| !int.TryParse(stringValue.Substring(10, 2), out var minute))
|
||||||
{
|
{
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: " + stringValue);
|
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: {Value}. Resolver: {Resolver}", stringValue, resolverName);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
return new DateTime(year, month, day, hour, minute, 0, DateTimeKind.Utc);
|
return new DateTime(year, month, day, hour, minute, 0, DateTimeKind.Utc);
|
||||||
@ -138,7 +136,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
|| !int.TryParse(stringValue.Substring(4, 2), out var month)
|
|| !int.TryParse(stringValue.Substring(4, 2), out var month)
|
||||||
|| !int.TryParse(stringValue.Substring(6, 2), out var day))
|
|| !int.TryParse(stringValue.Substring(6, 2), out var day))
|
||||||
{
|
{
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: " + stringValue);
|
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: {Value}. Resolver: {Resolver}", stringValue, resolverName);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
return new DateTime(year, month, day, 0, 0, 0, DateTimeKind.Utc);
|
return new DateTime(year, month, day, 0, 0, 0, DateTimeKind.Utc);
|
||||||
@ -151,7 +149,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
|| !int.TryParse(stringValue.Substring(2, 2), out var month)
|
|| !int.TryParse(stringValue.Substring(2, 2), out var month)
|
||||||
|| !int.TryParse(stringValue.Substring(4, 2), out var day))
|
|| !int.TryParse(stringValue.Substring(4, 2), out var day))
|
||||||
{
|
{
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: " + stringValue);
|
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: {Value}. Resolver: {Resolver}", stringValue, resolverName);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
return new DateTime(year + 2000, month, day, 0, 0, 0, DateTimeKind.Utc);
|
return new DateTime(year + 2000, month, day, 0, 0, 0, DateTimeKind.Utc);
|
||||||
@ -180,7 +178,7 @@ namespace CryptoExchange.Net.Converters.SystemTextJson
|
|||||||
|| !int.TryParse(values[1], out var month)
|
|| !int.TryParse(values[1], out var month)
|
||||||
|| !int.TryParse(values[2], out var day))
|
|| !int.TryParse(values[2], out var day))
|
||||||
{
|
{
|
||||||
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: " + stringValue);
|
LibraryHelpers.StaticLogger?.LogWarning("Unknown DateTime format: {Value}. Resolver: {Resolver}", stringValue, resolverName);
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -391,7 +391,7 @@ namespace CryptoExchange.Net.Testing.Comparers
|
|||||||
}
|
}
|
||||||
else if (objectValue is DateTime time)
|
else if (objectValue is DateTime time)
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrEmpty(stringValue) && time != DateTimeConverter.ParseFromString(stringValue!))
|
if (!string.IsNullOrEmpty(stringValue) && time != DateTimeConverter.ParseFromString(stringValue!, null))
|
||||||
throw new Exception($"{method}: {property} not equal: {stringValue} vs {time}");
|
throw new Exception($"{method}: {property} not equal: {stringValue} vs {time}");
|
||||||
}
|
}
|
||||||
else if (objectValue is bool bl)
|
else if (objectValue is bool bl)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user