protected void MapCostCodeColumns(params string[] columns) { if ((columns == null) || (columns.Length == 0)) { columns = DefaultCostCodeColumns.ToArray(); } ColumnMappings .AddMapping( contract => contract.CostCode, (c, o) => { var number = TryParser.Nullable <decimal>(o); if (number == null) { c.CostCode = string.Format("{0}", o).Trim(); } else { number = Math.Floor(number.Value); c.CostCode = string.Format("{0:000000000}", number); } }, columns); }
public bool BindModel(HttpActionContext actionContext, ModelBindingContext bindingContext) { var model = (DashboardRequest)bindingContext.Model ?? new DashboardRequest(); var hasPrefix = bindingContext .ValueProvider .ContainsPrefix(bindingContext.ModelName); var searchPrefix = (hasPrefix) ? bindingContext.ModelName + "." : string.Empty; Dimension dimension; Section section; Enum.TryParse(actionContext.ActionDescriptor.ActionName, out dimension); Enum.TryParse(GetValue(bindingContext, searchPrefix, "Section"), out section); model.ActivityGroupId = TryParser.Nullable <Guid>(GetValue(bindingContext, searchPrefix, "ActivityGroupId")); model.CostCode = GetValue(bindingContext, searchPrefix, "CostCode"); model.StartDate = GetDateTime(bindingContext, searchPrefix, "StartDate"); model.EndDate = GetDateTime(bindingContext, searchPrefix, "EndDate"); model.Dimension = dimension; model.Section = section; bindingContext.Model = model; return(true); }
private static void DateConversion(TravelDataContract contract, object value) { var datetime = TryParser.DateTime(value); contract.StartDate = datetime; contract.EndDate = datetime; }
public static double?Double(string value, NumberStyles style, IFormatProvider provider) { TryParser <double> parser = (string v, out double result) => System.Double.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static int?Int32(string value, NumberStyles style, IFormatProvider provider) { TryParser <int> parser = (string v, out int result) => System.Int32.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static decimal?Decimal(string value, NumberStyles style, IFormatProvider provider) { TryParser <decimal> parser = (string v, out decimal result) => System.Decimal.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static ulong?UInt64(string value, NumberStyles style, IFormatProvider provider) { TryParser <ulong> parser = (string v, out ulong result) => System.UInt64.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static ushort?UInt16(string value, NumberStyles style, IFormatProvider provider) { TryParser <ushort> parser = (string v, out ushort result) => System.UInt16.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static T TryParse <T>(this string str, TryParser <T> tryParser) { T outResult; tryParser(str, out outResult); return(outResult); }
public static T?ParseOrDefault <T>( this string s, TryParser <T> parser) where T : struct { T result; return(parser(s, out result) ? result : default(T?)); }
public static float?Single(string value, NumberStyles style, IFormatProvider provider) { TryParser <float> parser = (string v, out float result) => System.Single.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static byte?Byte(string value, NumberStyles style, IFormatProvider provider) { TryParser <byte> parser = (string v, out byte result) => System.Byte.TryParse(v, style, provider, out result); return(parser.NullInvoke(value)); }
public static T TryParse <T>(this string value, TryParser <T> parser) { T val; parser.Invoke(value, out val); return(val); }
public static T?TryParseNullable <T>(this string value, TryParser <T> parser) where T : struct { T val; return(parser.Invoke(value, out val) ? val : null as T?); }
public void DateTimeMustBeNullForMMDDYYYSlashFormat() { //Arrange+Act var result = TryParser.DateTime("05/13/2013"); //Assert Assert.IsNull(result); }
public void DateTimeMustWorkWithDDMMYYYSlashFormat() { //Arrange+Act var result = TryParser.DateTime("13/05/2013"); //Assert Assert.AreEqual(new DateTime(2013, 5, 13), result); }
public void DateTimeMustReturnNullWhenLargeNegativeDouble() { //Arrange+Act var result = TryParser.DateTime("-693594"); //Assert Assert.IsNull(result); }
public void DateTimeMustReturnValidDateForSmallestDouble() { //Arrange+Act var result = TryParser.DateTime("-693593"); //Assert Assert.AreEqual(DateTime.MinValue, result); }
public void DateTimeMustReturnValidDateForLargestDouble() { //Arrange+Act var result = TryParser.DateTime("2958465"); //Assert Assert.AreEqual(DateTime.MaxValue.Date, result); }
public void DoubleDateTimeMustAlsoWork() { //Arrange+Act var result = TryParser.DateTime(41407); //Assert Assert.AreEqual(new DateTime(2013, 5, 13), result); }
public void InvalidEnumValueMustBeNull() { //Arrange+Act var result = TryParser.Nullable <CultureTypes>("AllCltures"); //Assert Assert.IsNull(result); }
public void EnumValueMustBeConvertable() { //Arrange+Act var result = TryParser.Nullable <CultureTypes>("AllCultures"); //Assert Assert.AreEqual(CultureTypes.AllCultures, result); }
public void DecimalEmptyStringMustBeNull() { //Arrange+Act var result = TryParser.Nullable <decimal>(""); //Assert Assert.IsNull(result); }
public void DecimalValueMustBeConvertable() { //Arrange+Act var result = TryParser.Nullable <decimal>("1234.12345"); //Assert Assert.AreEqual(1234.12345M, result); }
public void DateTimeEmptyStringMustReturnNull() { //Arrange+Act var result = TryParser.DateTime(""); //Assert Assert.IsNull(result); }
public void DateTimeMustWorkWithYYYYMMDDDashFormat() { //Arrange+Act var result = TryParser.DateTime("2013-05-13"); //Assert Assert.AreEqual(new DateTime(2013, 5, 13), result); }
public void EmptyStringForEnumValueMustBeNull() { //Arrange+Act var result = TryParser.Nullable <CultureTypes>(""); //Assert Assert.IsNull(result); }
public void DateTimeMustReturnNullWhenLargeDouble() { //Arrange+Act var result = TryParser.DateTime("20120401.0"); //Assert Assert.IsNull(result); }
public void InvalidValueForDecimalMustBeNull() { //Arrange+Act var result = TryParser.Nullable <decimal>("1234.12345M"); //Assert Assert.IsNull(result); }
public void DateTimeMustBeNullForIncorrectFormat() { //Arrange+Act var result = TryParser.DateTime("13-13-2013"); //Assert Assert.IsNull(result); }