Esempio n. 1
0
        private string GetQueryColumns <TType>(QueryColumnMode mode, TType model = default(TType))
        {
            var map = TypeTableMaps.Get <TType>();

            var cols = new StringBuilder();

            if (mode == QueryColumnMode.InsertColumns || mode == QueryColumnMode.InsertValues)
            {
                cols.Append("(");
            }
            foreach (var column in map.Columns)
            {
                if (column.IsKey || column.IsDbGenerated)
                {
                    continue;
                }

                switch (mode)
                {
                case QueryColumnMode.InsertColumns:
                    cols.Append("[");
                    cols.Append(column.Name);
                    cols.Append("], ");
                    break;

                case QueryColumnMode.InsertValues:
                    cols.Append("@");
                    cols.Append(column.Name);
                    cols.Append(", ");
                    break;

                case QueryColumnMode.UpdateSets:
                    cols.Append("[");
                    cols.Append(column.Name);
                    cols.Append("] = ");
                    cols.Append("@");
                    cols.Append(column.Name);
                    cols.Append(", ");
                    break;
                }
            }
            cols.Remove(cols.Length - 2, 2);
            if (mode == QueryColumnMode.InsertColumns || mode == QueryColumnMode.InsertValues)
            {
                cols.Append(")");
            }

            return(cols.ToString());
        }
Esempio n. 2
0
 private string GetQueryColumns(QueryColumnMode mode)
 {
     return(GetQueryColumns <TModel>(mode));
 }