public static List <PdmEntityColumnClrUserDefineDto> GetErpExchangeDatabaseTableColumnDto(SqlConnection conn, string databaseTableName) { string query = string.Format(@"SELECT Columns.COLUMN_NAME as ColumnName,Columns.DATA_TYPE as DataType, Columns.CHARACTER_MAXIMUM_LENGTH as MaxLength, Columns.DATETIME_PRECISION as Precision, Columns.NUMERIC_SCALE as Scale, cast( (case when PK.COLUMN_NAME Is not null then 1 else 0 end) as bit) as PrimaryKey FROM information_schema.columns as Columns left join ( SELECT column_name FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE OBJECTPROPERTY(OBJECT_ID(constraint_name), 'IsPrimaryKey') = 1 AND table_name = '{0}' ) as PK on Pk.COLUMN_NAME = Columns.COLUMN_NAME WHERE table_name = '{0}' and ( Columns.DATA_TYPE <> 'timestamp' and Columns.DATA_TYPE <>'image' and Columns.DATA_TYPE <>'xml' and Columns.DATA_TYPE <>'varbinary' ) and Columns.COLUMN_NAME NOT IN ('{1}') ", databaseTableName, PLMConstantString.ExchangeRowDataChangeTimeStamp ); List <PdmEntityColumnClrUserDefineDto> toreturnList = new List <PdmEntityColumnClrUserDefineDto>(); // PLMSDataImport.ExchangeRowDataPLMImportDateTimeColumn // CLROutput.Output(query); var result = DataAcessHelper.GetDataTableQueryResult(conn, query); // CLROutput.SendDataTable(result); foreach (DataRow arow in result.Rows) { PdmEntityColumnClrUserDefineDto fromDataBaseDto = PLMDataRowConverter.ConvertErpExchangeDatabaseTableColumnDataRowToPdmEntityColumnDto(arow); toreturnList.Add(fromDataBaseDto); } var textboxColumn = toreturnList.Where(o => o.UicontrolType == (int)EmControlType.TextBox).FirstOrDefault(); if (textboxColumn != null) { textboxColumn.UsedByDropDownList = true; } return(toreturnList); }