/// <summary> /// Gets the expression that will be used to evaluate this comparison. /// </summary> /// <param name="property">The property.</param> /// <returns>A LINQ Expression that will evaluate this comparison.</returns> public override Expression GetExpression(MemberExpression property) { object value = Value.ToLower(); object value2 = !string.IsNullOrEmpty(Value2) ? Value2.ToLower() : null; if (property.Type != typeof(string)) { value = Convert.ChangeType(value, property.Type); if (value2 != null) { value2 = Convert.ChangeType(value2, property.Type); } } // // Handle processing of Regular Expressions since they are not supported // by the ComparisonHelper. // if (Comparison == Model.ComparisonType.RegularExpression) { Expression valueExpression; if (property.Type.IsGenericType && property.Type.GetGenericTypeDefinition() == typeof(Nullable <>)) { // if Nullable Type compare on the .Value of the property (if it HasValue) valueExpression = Expression.Property(property, "Value"); } else { valueExpression = property; } if (valueExpression.Type == typeof(string)) { var miToLower = typeof(string).GetMethod("ToLower", new Type[] { }); valueExpression = Expression.Call(valueExpression, miToLower); } var methodInfo = typeof(System.Text.RegularExpressions.Regex) .GetMethod("IsMatch", BindingFlags.Static | BindingFlags.Public, null, new[] { typeof(string), typeof(string), typeof(System.Text.RegularExpressions.RegexOptions) }, null); return(Expression.Call(null, methodInfo, valueExpression, Expression.Constant(value), Expression.Constant(System.Text.RegularExpressions.RegexOptions.IgnoreCase))); } if (property.Type == typeof(string)) { var fakeObject = new { Value = Expression.Lambda <Func <string> >(property).Compile()().ToStringSafe().ToLower() }; property = Expression.Property(Expression.Constant(fakeObject), "Value"); } return(Rock.Reporting.ComparisonHelper.ComparisonExpression(Comparison, property, Expression.Constant(value), value2 != null ? Expression.Constant(value2) : null)); }
private void Parse(CSVLoader csvLoader) { reward1IsPoints = new bool[csvLoader.Rows]; reward2IsPoints = new bool[csvLoader.Rows]; reward3IsPoints = new bool[csvLoader.Rows]; reward1Counts = new int[csvLoader.Rows]; reward2Counts = new int[csvLoader.Rows]; reward3Counts = new int[csvLoader.Rows]; for (int i = 0; i < csvLoader.Rows; i++) { csvLoader.ReadValue(0, i, string.Empty, out string Value); csvLoader.ReadValue(1, i, string.Empty, out string Value2); csvLoader.ReadValue(2, i, string.Empty, out string Value3); csvLoader.ReadValue(3, i, string.Empty, out string Value4); csvLoader.ReadValue(4, i, string.Empty, out string Value5); csvLoader.ReadValue(5, i, string.Empty, out string Value6); csvLoader.ReadValue(6, i, string.Empty, out string Value7); Value.Trim(); Value.ToLower(); Value2.Trim(); Value2.ToLower(); Value3.Trim(); Value3.ToLower(); Value4.Trim(); Value4.ToLower(); Value5.Trim(); Value5.ToLower(); Value6.Trim(); Value6.ToLower(); Value7.Trim(); Value7.ToLower(); reward1IsPoints[i] = ((Convert.ToInt32(Value2) == 1) ? true : false); reward2IsPoints[i] = ((Convert.ToInt32(Value3) == 1) ? true : false); reward3IsPoints[i] = ((Convert.ToInt32(Value4) == 1) ? true : false); reward1Counts[i] = Convert.ToInt32(Value5); reward2Counts[i] = Convert.ToInt32(Value6); reward3Counts[i] = Convert.ToInt32(Value7); } }
private void Parse(CSVLoader csvLoader) { for (int i = 0; i < csvLoader.Rows; i++) { csvLoader.ReadValue(0, i, string.Empty, out string Value); csvLoader.ReadValue(1, i, string.Empty, out string Value2); csvLoader.ReadValue(2, i, string.Empty, out string Value3); csvLoader.ReadValue(3, i, string.Empty, out string Value4); Value.Trim(); Value.ToLower(); Value2.Trim(); Value2.ToLower(); Value3.Trim(); Value3.ToLower(); Value4.Trim(); Value4.ToLower(); int evt = Convert.ToInt32(Value); int opt = Convert.ToInt32(Value3); int amount = Convert.ToInt32(Value4); levelupCompens.Add(new LevelUpCompensation(evt, Value2, opt, amount)); } }
private void ParsePimp(CSVLoader csvLoader) { for (int i = 0; i < csvLoader.Rows; i++) { csvLoader.ReadValue(0, i, string.Empty, out string Value); csvLoader.ReadValue(1, i, string.Empty, out string Value2); csvLoader.ReadValue(2, i, string.Empty, out string Value3); csvLoader.ReadValue(3, i, string.Empty, out string Value4); Value.Trim(); Value.ToLower(); Value2.Trim(); Value2.ToLower(); Value3.Trim(); Value3.ToLower(); Value4.Trim(); Value4.ToLower(); int cat = Convert.ToInt32(Value); int prop = Convert.ToInt32(Value2); int num = Convert.ToInt32(Value3); float val = (float)Convert.ToDouble(Value4); updateValue(cat, prop, num - 1, val); } }