Кто-нибудь знает библиотеку для работы с парами количество / единица измерения? - PullRequest
2 голосов
/ 10 сентября 2008

Я хотел бы иметь возможность делать такие вещи, как

var m1 = new UnitOfMeasureQuantityPair(123.00, UnitOfMeasure.Pounds);
var m2 = new UnitOfMeasureQuantityPair(123.00, UnitOfMeasure.Liters);

m1.ToKilograms();
m2.ToPounds(new Density(7.0, DensityType.PoundsPerGallon);

Если такого еще нет, кто-нибудь заинтересован в том, чтобы сделать это как проект os?

Ответы [ 6 ]

4 голосов
/ 10 сентября 2008

Ознакомьтесь с библиотекой преобразования единиц измерения в проекте кода.

2 голосов
/ 10 сентября 2008

В Глава 10. Количественный образец архетипа книги Корпоративные шаблоны и MDA: создание лучшего программного обеспечения с использованием шаблонов архетипов и UML Джимом Арлоу и Илой Нойштадтом есть действительно полезное обсуждение этой темы и некоторые общие закономерности, которые вы можете использовать в качестве руководства.

2 голосов
/ 10 сентября 2008

Мы фактически построили один дом, где я работаю. К сожалению, это не доступно для общественности.

Это действительно отличный проект для работы, и это не так сложно сделать. Если вы планируете что-то сделать самостоятельно, я предлагаю вам прочитать о Количество , Размер и Единица ( фундаментальных единиц ).

Это помогло нам ясно понять суть проблемы и очень помогло при разработке библиотеки.

1 голос
/ 19 января 2017

Есть (старая) статья по CodeProject . Я использовал его в производственной среде ранее, и он работал отлично. У нас были некоторые незначительные проблемы (производительность среди других), на которые я обратился. Я положил все это в библиотеку, которую вы можете найти здесь .

Отказ от ответственности: Я поддерживаю этот проект, так что его можно представить как бесстыдную вилку Однако библиотека бесплатная (как в пиве, так и в речи).

Включает в себя единицы СИ, но также позволяет создавать новые единицы и преобразования.

Таким образом, вы можете, например, создать юнит "XP" (очки опыта). Затем вы можете зарегистрировать преобразование в «м» (метр, не имеет смысла, но вы можете сделать это). Вы также можете создать сумму, например, 3 XP / мин (3 очка опыта в минуту). Я считаю, что он предлагает достойные значения по умолчанию, но при этом обеспечивает гибкость.

1 голос
/ 10 сентября 2008

См. Также самый последний выпуск F # - в нем есть статический анализ области измерения / измерения.

0 голосов
/ 12 июня 2011

Unix юнитов - это блестяще; источник должен быть где-то в сети.
(Под «ошибками» в оригинальном документе говорилось «не основывайте свои финансовые планы на конвертации валют».)

...