public void ExpressionFactoryGetterFromPropertyNameGetPropertyValue() { var item = new CompiledExpTestEntity { Id = 1, Name = "foo" }; var getterFunc = CompiledExpressionFactory.CreatePropertyGetter <CompiledExpTestEntity, int>("Id"); Assert.AreEqual(1, getterFunc(item)); }
public void ExpressionFactoryGetterFromPropertySupportsCasting() { var item = new CompiledExpTestEntity { Id = 1, Name = "foo" }; var getterFunc = CompiledExpressionFactory.CreatePropertyGetterWithCast <CompiledExpTestEntity, double>("Id"); Assert.AreEqual(1.0, getterFunc(item)); }
public void ExpressionFactorySetterFromPropertyNameSetsPropertyValue() { var item = new CompiledExpTestEntity { Id = 1, Name = "foo" }; var setterFunc = CompiledExpressionFactory.CreatePropertySetter <CompiledExpTestEntity, int>("Id"); setterFunc(item, 2); Assert.AreEqual(2, item.Id); }
public void ExpressionFactorySetterFromPropertyNameWithCastSetsPropertyValue() { var item = new CompiledExpTestEntity { Id = 1, Name = "foo" }; var setterWithCastFunc = CompiledExpressionFactory.CreatePropertySetterCast <CompiledExpTestEntity, object>("Name"); object o = "bar"; setterWithCastFunc(item, o); Assert.AreEqual("bar", item.Name); }