var field = "mCurrentBalance"; var propInfo = GetPropertyInfo(typeof(MsgOrders), field); var paramExpr = Expression.Parameter(typeof(MsgOrders)); var propAccess = Expression.PropertyOrField(paramExpr, propInfo.Name); var expr = Expression.Lambda(propAccess, paramExpr); //var member = Expression.Property(paramExpr, propInfo); //var mList = new List<MemberBinding>(); //mList.Add(Expression.Bind(propInfo, member)); //var mm = Expression.MemberInit(Expression.New(typeof(MsgOrders)), mList.ToArray()); var expression = Expression.Lambda<Func<MsgOrders, object>>(expr, new ParameterExpression[] { paramExpr });