Example #1
0
        public ViewColumnSchema[] GetViewColumns(string connectionString, ViewSchema view)
        {
            DataTable dt = GetSchemaData(connectionString,
                                         Columns,
                                         null /*restrictions[0] - catalog*/,
                                         null /*restrictions[1] - unused*/,
                                         view.Name /*restrictions[2] - table*/,
                                         null /*restrictions[3] - column*/);

            ViewColumnSchema[] columns = new ViewColumnSchema[dt.Rows.Count];
            int colIdx = 0;

            foreach (DataRow dr in dt.Rows)
            {
                ViewColumnSchema col = new ViewColumnSchema(view,
                                                            (String)dr[ColumnsNameColumn],
                                                            DbTypeFromType((String)dr[ColumnsTypeColumn]),
                                                            NativeTypeFromType((String)dr[ColumnsTypeColumn]),
                                                            0,
                                                            0,
                                                            0,
                                                            (bool)dr[ColumnsNullableColumn]
                                                            );

                columns[colIdx++] = col;
            }

            return(columns);
        }
Example #2
0
        public string GetMemberVariableNameView(ViewColumnSchema column)
        {
            //string propertyName = GetPropertyName(column);
            string propertyName       = column.Name;
            string memberVariableName = "_" + GetCamelCaseName(propertyName);

            return(memberVariableName);
        }
Example #3
0
 private void CompareColumns(TableColumn colSpec, ViewColumnSchema col)
 {
     Assert.AreEqual(colSpec.Name, col.Name);
     Assert.AreEqual(colSpec.NativeType.ToLower(), col.NativeType.ToLower());
     Assert.AreEqual(colSpec.DatabaseType, col.DataType);
     Assert.AreEqual(0, col.Scale);
     Assert.AreEqual(0, col.Precision);
     Assert.AreEqual(0, col.Size);
 }
Example #4
0
 public static string GetPropDes(ViewColumnSchema column)
 {
     if (column.Description == string.Empty)
     {
         return(column.Name);
     }
     else
     {
         return(column.Description);
     }
 }
Example #5
0
    /// <summary>
    /// 根据视图中列对象获得列的参数类型(最后不包含'?')
    /// </summary>
    /// <param name="viewColumn"></param>
    /// <returns></returns>
    public string GetMKParameter(ViewColumnSchema viewColumn)
    {
        string tempType = GetMemberKeyType(viewColumn);

        if (tempType.EndsWith("?"))
        {
            tempType = tempType.Substring(0, tempType.Length - 1);
        }

        return(tempType);
    }
Example #6
0
    public string GetColumnSize(ViewColumnSchema column)
    {
        string columnSize = column.Size.ToString();

        if (column.NativeType == "numeric" && column.Precision != 0)
        {
            columnSize += "(" + column.Precision.ToString() + "," + column.Scale + ")";
        }

        return(columnSize);
    }
Example #7
0
 public static string GetIdType(ViewColumnSchema c)
 {
     if (c.DataType == DbType.Int32)
     {
         return("int");
     }
     else
     {
         return("Guid");
     }
 }
Example #8
0
    /// <summary>
    /// 根据视图中的列获取数据转化方法
    /// </summary>
    /// <param name="viewColumn"></param>
    /// <returns></returns>
    public string GetConvertMethod(ViewColumnSchema viewColumn)
    {
        switch (viewColumn.DataType)
        {
        case DbType.Byte: return("ConvertByte");

        case DbType.Int16:
        case DbType.Int32:
        {
            return("ConvertInt");
        }

        case DbType.Int64:
        {
            return("ConvertLong");
        }

        case DbType.AnsiStringFixedLength:
        case DbType.AnsiString:
        case DbType.String:
        case DbType.StringFixedLength:
        {
            return("ConvertStr");
        }

        case DbType.Boolean: return("ConvertBool");

        case DbType.Guid: return("ConvertGuid");

        case DbType.Currency:
        case DbType.Decimal:
        {
            return("ConvertDecimal");
        }

        case DbType.DateTime:
        case DbType.Date:
        {
            return("ConvertDate");
        }

        case DbType.Binary:
        {
            return("GetBytes");
        }

        default:
        {
            return("__SQL__" + viewColumn.DataType);
        }
        }
    }
Example #9
0
    /// <summary>
    /// 根据列对象获得列描述
    /// </summary>
    /// <param name="viewColumn">视图列</param>
    /// <returns></returns>
    public string GetColumnDesc(ViewColumnSchema viewColumn)
    {
        string tempDesc = viewColumn.Name;

        if (viewColumn.Description.Length <= 0)
        {
            return(tempDesc);
        }
        else
        {
            return(viewColumn.Description);
        }
    }
Example #10
0
 public static string GetColumnSqlValue(ViewColumnSchema column,
                                        SchemaExplorer.ExtendedPropertyCollection extendedProperties)
 {
     if (extendedProperties["enum"] != null)
     {
         string retEnum = GetEnumFromEp(extendedProperties["enum"].Value.ToString(), column.Name);
         if (retEnum != null)
         {
             return(string.Format("((long){0}).ToString()", GetFiledName(column)));
         }
     }
     return(string.Format("{0}.ToString()", GetFiledName(column)));
 }
Example #11
0
    public static string GetCType(ViewColumnSchema column,
                                  SchemaExplorer.ExtendedPropertyCollection extendedProperties)
    {
        if (extendedProperties["enum"] != null)
        {
            string retEnum = GetEnumFromEp(extendedProperties["enum"].Value.ToString(), column.Name);
            if (retEnum != null)
            {
                return(column.AllowDBNull ? retEnum : retEnum);
            }
        }

        return(GetCType(column.DataType, column.AllowDBNull));
    }
Example #12
0
    public string GetPopulateType(ViewColumnSchema column,
                                  SchemaExplorer.ExtendedPropertyCollection viewExtendedProperties)
    {
        if (viewExtendedProperties["enum"] != null)
        {
            string ret = GetEnumFromEp(viewExtendedProperties["enum"].Value.ToString(), column.Name);
            if (ret != null)
            {
                ret = string.Format("({0})({1})", ret, GetCType(column.DataType, false));
                return(ret);
            }
        }

        return(string.Format("({0})", GetCType(column.DataType, false)));
    }
Example #13
0
    /// <summary>
    /// 根据视图对象获得排序列
    /// </summary>
    /// <param name="view">视图</param>
    /// <returns></returns>
    public string GetSortedKeyName(ViewSchema view)
    {
        foreach (ViewColumnSchema one in view.Columns)
        {
            if (one.Name.Equals("createdate", StringComparison.CurrentCultureIgnoreCase) ||
                one.Name.Equals("creattime", StringComparison.CurrentCultureIgnoreCase))
            {
                return(one.Name);
            }
        }
        ViewColumnSchema orderCol = view.Columns.Find(p => p.Name.EndsWith("Date") || p.Name.EndsWith("Time"));

        if (orderCol != null)
        {
            return(orderCol.Name);
        }
        return("in View: " + view.Name + " can't find sort colume");
    }
Example #14
0
    /// <summary>
    /// 根据视图中列对象获得对应的默认值
    /// </summary>
    /// <param name="viewColumn"></param>
    /// <returns></returns>
    public string GetMemberVariableDefaultValue(ViewColumnSchema viewColumn)
    {
        switch (viewColumn.DataType)
        {
        case DbType.AnsiString:
        case DbType.AnsiStringFixedLength:
        case DbType.String:
        case DbType.StringFixedLength:
        {
            return("string.Empty");
        }

        case DbType.Int16:
        case DbType.Int32:
        case DbType.Int64:
        {
            return("0");
        }

        case DbType.Date:
        case DbType.DateTime:
        {
            return("DateTime.MinValue");
        }

        case DbType.VarNumeric:
        case DbType.Double:
        case DbType.Currency:
        case DbType.Decimal:
        {
            return("0.0M");
        }

        case DbType.Guid: return("Guid.Empty");

        case DbType.Boolean: return("false");

        default: return(string.Empty);
        }
    }
Example #15
0
        public string GetMemberVariableDefaultValueView(ViewColumnSchema column)
        {
            switch (column.DataType)
            {
            case DbType.Guid:
            {
                return("Guid.Empty");
            }

            case DbType.AnsiString:
            case DbType.AnsiStringFixedLength:
            case DbType.String:
            case DbType.StringFixedLength:
            {
                return("String.Empty");
            }

            case DbType.Boolean:
                return("false");

            case DbType.Int32:
                return("0");

            case DbType.DateTime:
                return("new DateTime(1900,1,1)");

            case DbType.Single:
                return("0");

            case DbType.Double:
                return("0");

            default:
            {
                return("");
            }
            }
        }
 /// <summary>
 /// Returns a T-SQL parameter statement based on the given column.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public string GetSqlParameterStatement(ViewColumnSchema column)
 {
     return(GetSqlParameterStatement(column, false));
 }
 /// <summary>
 /// Determines if the given column's data type requires a max length to be defined.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public bool IncludeMaxLengthCheck(ViewColumnSchema column)
 {
     return(IncludeMaxLengthCheck(column as DataObjectBase));
 }
 public string GetMemberVariableDefaultValue(ViewColumnSchema column)
 {
     return(GetMemberVariableDefaultValue(column as DataObjectBase));
 }
Example #19
0
 /// <summary>
 /// Returns a VB.Net member variable declaration statement.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public override string GetMemberVariableDeclarationStatement(ViewColumnSchema column)
 {
     return(GetMemberVariableDeclarationStatement("Protected", column));
 }
Example #20
0
 private string GetDataColumnType(EntitiesGenerator.Definitions.DataColumn dataColumn, ViewColumnSchema column)
 {
     return TypeManager.GetWellKnownDbTypeName(column.DataType);
 }
Example #21
0
 public string GetObjectPropertyAccessor(ViewColumnSchema column, string objectName)
 {
     return objectName + "." + GetPropertyName(column.Name);
 }
 /// <summary>
 /// Returns a C# member variable declaration statement.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public virtual string GetMemberVariableDeclarationStatement(ViewColumnSchema column)
 {
     return(GetMemberVariableDeclarationStatement("protected", column));
 }
Example #23
0
 private string GetDataColumnLength(ViewColumnSchema column)
 {
     if (column.Size > 0)
     {
         return column.Size.ToString();
     }
     return null;
 }
Example #24
0
 public static string GetPropertyName(ViewColumnSchema column)
 {
     return(column.Name.Substring(0, 1).ToUpper() + column.Name.Substring(1));
 }
Example #25
0
 public static string GetFiledName(ViewColumnSchema column)
 {
     return(column.Name.Substring(0, 1).ToLower() + column.Name.Substring(1));
 }
 /// <summary>
 /// Returns a T-SQL parameter statement based on the given column.
 /// </summary>
 /// <param name="column"></param>
 /// <param name="isOutput"></param>
 /// <returns></returns>
 public string GetSqlParameterStatement(ViewColumnSchema column, bool isOutput)
 {
     return(GetSqlParameterStatement(column as DataObjectBase, isOutput));
 }
 /// <summary>
 /// Returns a C# member variable declaration statement.
 /// </summary>
 /// <param name="protectionLevel"></param>
 /// <param name="column"></param>
 /// <returns></returns>
 public string GetMemberVariableDeclarationStatement(string protectionLevel, ViewColumnSchema column)
 {
     return(GetMemberVariableDeclarationStatement(protectionLevel, column as DataObjectBase));
 }
 /// <summary>
 /// Generates any extra parameters that are needed for the ADO parameter statement.
 /// </summary>
 /// <param name="statementPrefix"></param>
 /// <param name="column"></param>
 /// <returns></returns>
 public string GetSqlParameterExtraParams(string statementPrefix, ViewColumnSchema column)
 {
     return(GetSqlParameterExtraParams(statementPrefix, column as DataObjectBase));
 }
 /// <summary>
 /// Returns the name of the typed reader method for a given column.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public string GetReaderMethod(ViewColumnSchema column)
 {
     return(GetReaderMethod(column.DataType));
 }
 private void CompareColumns(TableColumn colSpec, ViewColumnSchema col)
 {
     Assert.AreEqual(colSpec.Name, col.Name);
     Assert.AreEqual(colSpec.NativeType.ToLower(), col.NativeType.ToLower());
     Assert.AreEqual(colSpec.DatabaseType, col.DataType);
     Assert.AreEqual(0, col.Scale);
     Assert.AreEqual(0, col.Precision);
     Assert.AreEqual(0, col.Size);
 }
 public string GetSqlDbType(ViewColumnSchema column)
 {
     return(GetSqlDbType(column.NativeType));
 }
Example #32
0
 /// <summary>
 /// Returns the C# variable type based on the given column.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public string GetVBVariableType(ViewColumnSchema column)
 {
     return(GetVBVariableType(column as DataObjectBase));
 }
 /// <summary>
 /// Determine if the given column is using a UDT.
 /// </summary>
 /// <param name="column"></param>
 /// <returns></returns>
 public bool IsUserDefinedType(ViewColumnSchema column)
 {
     return(IsUserDefinedType(column as DataObjectBase));
 }
    public string GetColumnSize(ViewColumnSchema column)
    {
        string columnSize = column.Size.ToString();

        if (column.NativeType == "numeric" && column.Precision != 0)
        {
            columnSize += "(" + column.Precision.ToString() + "," + column.Scale + ")";
        }

        return columnSize;
    }
Example #35
0
 public static int GetParamSize(ViewColumnSchema column)
 {
     return(GetParamSize(column.NativeType, column.Size));
 }
        public ViewColumnSchema[] GetViewColumns(string connectionString, ViewSchema view)
        {
            DataTable dt = GetSchemaData(connectionString,
                Columns,
                null /*restrictions[0] - catalog*/,
                null /*restrictions[1] - unused*/,
                view.Name /*restrictions[2] - table*/,
                null /*restrictions[3] - column*/);

            ViewColumnSchema[] columns = new ViewColumnSchema[dt.Rows.Count];
            int colIdx = 0;

            foreach (DataRow dr in dt.Rows)
            {
                ViewColumnSchema col = new ViewColumnSchema(view,
                    (String)dr[ColumnsNameColumn],
                    DbTypeFromType((String)dr[ColumnsTypeColumn]),
                    NativeTypeFromType((String)dr[ColumnsTypeColumn]),
                    0,
                    0,
                    0,
                    (bool)dr[ColumnsNullableColumn]
                    );

                columns[colIdx++] = col;
            }

            return columns;
        }
Example #37
0
 private string GetDataColumnDataType(ViewColumnSchema column)
 {
     string dbTypeName = TypeManager.GetWellKnownDbTypeName(column.DataType);
     if (!TypeManager.WellKnownDataTypes.ContainsKey(dbTypeName))
     {
         return column.NativeType;
     }
     return dbTypeName;
 }