Как библиотека общего назначения, я думаю, что JSON.NET делает правильные вещи, используя формат туда и обратно.Это гарантирует, что информация не будет потеряна.С практической точки зрения научная запись может быть намного короче десятичной записи (для 1e-200
потребуется более 200 символов), поэтому, опять же, кажется, что такой подход к реализации формата туда и обратно является правильным.
Сказав это, ваше использование также полностью допустимо.Однако изменение исходного кода сторонней библиотеки сопряжено со своими проблемами.Каждый раз, когда вы получаете новую версию JSON.NET, вы должны применить то же самое изменение.В какой-то момент внутренняя работа библиотеки может измениться, и тогда это исправление больше не будет работать.
На мой взгляд, лучше работать с тем, что у вас есть, если вы можете.В этом случае вы можете написать собственный конвертер и применить атрибут JsonConverter
к вашей собственности.Это действительно легко сделать: существующие преобразователи даты и времени должны дать вам преимущество.