protected override Expression VisitParameter(ParameterExpression p)
        {
            SingleEntityView op = null;

            if (p.Name == _lParamName)
            {
                op = _left;
            }
            if (p.Name == _rParamName)
            {
                op = _right;
            }

            Assertion.IsNotNull(op, "parameter expression invalid.");

            if (!string.IsNullOrEmpty(op.Alias))
            {
                _str.Append(_tr.GetEscapedTableName(op.Alias));
            }
            else
            {
                var map = _cache.GetMapInfo(p.Type, true);
                _str.Append(_tr.GetEscapedTableName(map.Table.LocalName));
            }

            return(p);
        }
Exemple #2
0
        private void Visit(SingleEntityView sv)
        {
            var map = _cache.GetMapInfo(sv.EntityType, true);

            _str.Append(_tr.GetEscapedTableName(map.Table.LocalName));
            if (!string.IsNullOrEmpty(sv.Alias))
            {
                _str.Append(SPACE).Append(_tr.GetEscapedTableName(sv.Alias));
            }
        }
Exemple #3
0
        public virtual string DropTable <T>()
        {
            IObjectMapInfo mapInfo = _cache.GetMapInfo(typeof(T), true);

            try
            {
                StringBuilder str = new StringBuilder();
                str.Append(_tr.DropTable).Append(_tr.GetEscapedTableName(mapInfo.Table.LocalName));
                return(str.ToString());
            }
            catch (Exception ex)
            {
                throw ex.CreateWrapException <SQLGenerateException>();
            }
        }
Exemple #4
0
        protected override Expression VisitParameter(ParameterExpression p)
        {
            string name = p.ChooseNameFromView(_svList, _cache);

            _str.Append(_tr.GetEscapedTableName(name));
            return(p);
        }
        private void Visit(SingleEntityView s)
        {
            var map = _cache.GetMapInfo(s.EntityType, true);

            string prefix = s.Alias ?? map.Table.LocalName;

            foreach (var pMap in map.PropertyMaps)
            {
                _str.Append(_tr.GetEscapedTableName(prefix)).Append(_tr.MemberAccess).Append(_tr.GetEscapedColumnName(pMap.ColumnName))
                .Append(_tr.As).Append(_tr.GetEscapedColumnName(prefix + pMap.ColumnName)).Append(_tr.ColumnDelimiter);
            }
        }
Exemple #6
0
        public virtual string FindByPK <T>(T pk)
        {
            pk.ThrowIfNullArgument(nameof(pk));
            var map = _cache.GetMapInfo(typeof(T), true);

            if (map.PrimaryKeyMaps.Count() == 0)
            {
                GenerateExceptionHelper.ThrowNoPrimaryKeyDefine(typeof(T));
            }
            try
            {
                StringBuilder str = new StringBuilder();

                str.Append(_tr.Select).Append(_cb.BuildSelectColumns(map)).Append(_tr.From).Append(_tr.GetEscapedTableName(map.Table.LocalName));
                str.Append(_tr.Where).Append(_cb.BuildWherePrimaryKey(map, pk));

                return(str.ToString());
            }
            catch (Exception ex)
            {
                throw ex.CreateWrapException <SQLGenerateException>();
            }
        }