Пример #1
0
            /// <summary>
            /// Unit Strings, such as length, volume, ...
            /// </summary>
            /// <param name="prop"></param>
            /// <returns></returns>
            private static string GetUnitString(IProperty prop)
            {
                IUnitBase unitBase = prop.Unit;

                ITimeUnit timeUnit = unitBase as ITimeUnit;

                if (timeUnit != null)
                {
                    return(timeUnit.Time.ToString());
                }
                ITravelRateUnit travalrateunit = unitBase as ITravelRateUnit;

                if (travalrateunit != null)
                {
                    return(travalrateunit.TravelRate.ToString());
                }
                ILengthUnit lengthunit = unitBase as ILengthUnit;

                if (lengthunit != null)
                {
                    return(lengthunit.Length.ToString());
                }
                ICurrencyUnit currencyunit = unitBase as ICurrencyUnit;

                if (currencyunit != null)
                {
                    return(currencyunit.Currency.ToString());
                }
                IVolumeUnit volumeunit = unitBase as IVolumeUnit;

                if (volumeunit != null)
                {
                    return(volumeunit.Volume.ToString());
                }
                IMassUnit massunit = unitBase as IMassUnit;

                if (massunit != null)
                {
                    return(massunit.Mass.ToString());
                }
                IVolumeFlowRateUnit volumeflowrateunit = unitBase as IVolumeFlowRateUnit;

                if (volumeflowrateunit != null)
                {
                    return(volumeflowrateunit.Volume.ToString() + "/" + volumeflowrateunit.Time.ToString());
                }
                IMassFlowRateUnit massflowrateunit = unitBase as IMassFlowRateUnit;

                if (massflowrateunit != null)
                {
                    return(massflowrateunit.Mass.ToString() + "/" + massflowrateunit.Time.ToString());
                }
                ITravelAccelerationUnit timeaccelerationunit = unitBase as ITravelAccelerationUnit;

                if (timeaccelerationunit != null)
                {
                    return(timeaccelerationunit.Length.ToString() + "/" + timeaccelerationunit.Time.ToString());
                }
                ICurrencyPerTimeUnit currencepertimeunit = unitBase as ICurrencyPerTimeUnit;

                if (currencepertimeunit != null)
                {
                    return(currencepertimeunit.CurrencyPerTimeUnit.ToString());
                }

                return("none");
            }
Пример #2
0
 public PowerUnitMassBuilder WithMass(IMassUnit unit, IPrefix prefix = null)
 {
     return(new PowerUnitMassBuilder(new UnitData <IMassUnit, IPrefix>(unit, prefix)));
 }