Я заметил, что .NET имеет некоторое напуганное/неинтуитивное поведение, когда речь идет о десятичных и конечных нулях.
0m == 0.000m //true
0.1m == 0.1000m //true
но
(0m).ToString() == (0.000m).ToString() //false
(0.1m).ToString() == (0.1000m).ToString() //false
Я знаю о необходимости соблюдения стандарта CLI ECMA. Однако я хотел бы знать, существует ли встроенный способ обрезания конечных нулей для десятичного значения без прохождения строкового представления (.ToString( "G29" ) и синтаксический анализ разбора будет работать, но не является быстрым и элегантным решением)
Любые идеи? Большое спасибо.