Qualcuno conosce una libreria per lavorare con quantità/unità di misura della coppia?
Domanda
Vorrei essere in grado di fare cose come
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);
Se non c'è qualcosa di simile già, chiunque sia interessato a farlo come un progetto os?
Soluzione
Controllare il Unità Di Misura Conversione Biblioteca sul Progetto di Codice.
Altri suggerimenti
Abbiamo costruito un modello in-house in cui io lavoro.Purtroppo, non è disponibile per il pubblico.
Questo è in realtà un grande lavoro sul progetto e non è così difficile da fare.Se hai intenzione di fare qualcosa da soli, vi suggerisco di leggere Quantità, Dimensione e Unità (unità fondamentali).
Questo ci ha aiutato a capire il dominio del problema in modo chiaro e ha aiutato molto nella progettazione di una biblioteca.
In Capitolo 10.Quantità archetipo modello del libro Enterprise Modelli e MDA:La costruzione di Migliori Software con Archetipo Pattern e UML da Jim Arlow e Ila Neustadt c'è davvero utile per la discussione di questo argomento e alcuni modelli generali si potrebbe utilizzare come guida.
Vedi anche l'ultima F# comunicato - ha misurazione statica dominio/dimensione di analisi.
C'è un vecchio articolo su CodeProject.Io l'ho utilizzato in un ambiente di produzione in precedenza e ha funzionato alla grande.Abbiamo avuto alcuni problemi minori (performance tra gli altri), a cui mi sono rivolto.Ho messo tutto in una biblioteca si possono trovare qui.
Disclaimer: Io sono il responsabile di questo progetto, quindi questo potrebbe essere concepita come una spina spudorato.La biblioteca è libero (come la birra e come il parlato) tuttavia.
Esso comprende le unità SI, ma permette anche di creare nuove unità di misura e conversioni.
Così, per esempio, è possibile creare una unità di XP (punti esperienza).È quindi possibile registrare una conversione a "m" (metro, non ha senso, ma si può fare).È inoltre possibile creare un importo 3 XP/min (3 punti esperienza al minuto).Credo si offre decente valori predefiniti, consentendo flessibilità.
Unix unità ma imho è geniale;l'origine deve essere sul web da qualche parte.
(In "bug", l'originale doc ha detto "non basare i vostri piani finanziari sulle conversioni di valuta".)