public void TestGetPropertyExpressionFromStringArray()
        {
            var str = new[] { "BProp", "CProp", "DProp" };

            var expr = Expression.Parameter(typeof(A), "x");
            var prop = str.GetMemberExpression(expr);

            prop.ToString().Should().Be("x.BProp.CProp.DProp");
        }
        public void TestGetPropertyLambdaWithObjectReturnTypeFromStringArray()
        {
            var str = new[] { "BProp", "CProp", "DProp" };

            var prop = str.GetMemberExpression<A>();

            prop.ToString().Should().Be("x => x.BProp.CProp.DProp");
        }