예제 #1
0
        protected override MemberAssignment VisitMemberAssignment(MemberAssignment node)
        {
            var vis = new UnaryMapping();

            vis.Visit(node.Expression);
            if (vis.ColumnName != null)
            {
                var propertyInfo = node.Member as PropertyInfo;
                MappingSetters.Add(new SqlResultFieldDefinition
                {
                    ColumnName   = propertyInfo.Name,
                    PropertyInfo = propertyInfo
                });
            }
            else
            {
                var vis2 = new MappingSetterVisitor();
                vis2.Visit(node.Expression);
                MappingSetters.Add(new SqlResultFieldDefinition
                {
                    ColumnName   = vis2.ColumnName,
                    PropertyInfo = node.Member as PropertyInfo
                });
            }
            return(base.VisitMemberAssignment(node));
        }
예제 #2
0
        protected override MemberAssignment VisitMemberAssignment(MemberAssignment node)
        {
            var vis = new UnaryMapping();

            vis.Visit(node.Expression);
            if (vis.MappingSetter != null)
            {
                vis.MappingSetter.TargetPropertyInfo = node.Member as PropertyInfo;
                MappingSetters.Add(vis.MappingSetter);
            }
            else
            {
                var vis2 = new XmlMappingSetterVisitor();
                vis2.Visit(node.Expression);
                vis2.MappingSetter.TargetPropertyInfo = node.Member as PropertyInfo;
                MappingSetters.Add(vis2.MappingSetter);
            }
            return(base.VisitMemberAssignment(node));
        }