protected override Expression VisitMemberExpression (MemberExpression expression)
{
ArgumentUtility.CheckNotNull ("expression", expression);
var preparedMemberExpression = (MemberExpression) TranslateExpression (expression, Context, Stage, MethodCallTransformerProvider);
var joinInfo = new UnresolvedCollectionJoinInfo (preparedMemberExpression.Expression, preparedMemberExpression.Member);
var joinedTable = new SqlJoinedTable (joinInfo, JoinSemantics.Inner);
var oldStyleJoinedTable = _tableGenerator (joinedTable);
var sqlTableReferenceExpression = new SqlTableReferenceExpression (oldStyleJoinedTable);
FromExpressionInfo = new FromExpressionInfo (
oldStyleJoinedTable, new Ordering[0], sqlTableReferenceExpression, new JoinConditionExpression (joinedTable));
return sqlTableReferenceExpression;
}