common/Utils/UserAccessCtrl/ParseExtensions.cs
2026-04-23 17:50:07 +02:00

29 lines
1001 B
C#

using System;
using System.Globalization;
using System.Threading;
namespace Xylem.Common.Utils.UserAccessCtrl
{
internal static class ParseExtensions
{
private static readonly NumberStyles any = NumberStyles.Any;
private static readonly CultureInfo de = new CultureInfo("de-DE");
private static readonly CultureInfo us = new CultureInfo("en-US");
private static Boolean IsDECulture => Thread.CurrentThread.CurrentCulture.Name.ToLower().Contains("de");
internal static Boolean TryParse(this String stringValue, out Double value)
{
if (IsDECulture)
{
return double.TryParse(stringValue, any, de, out value)
|| double.TryParse(stringValue, any, us, out value);
}
else
{
return double.TryParse(stringValue, any, us, out value)
|| double.TryParse(stringValue, any, de, out value);
}
}
}
}