/// <summary> /// 画数据 /// </summary> private void ReadDataTable() { try { var sqlData = string.Empty; _TableView.TableFields = Service.GetTableColumns(_TableView.ConnectionStr, _TableView.DataType, _TableView.DataBase, _TableView.TableKey); switch (_TableView.DataType) { case DataTypes.SQLSERVER: var orderKey = string.Empty; if (_TableView.TableFields.Where(s => "ID".Equals(s.ColumnName.ToUpper())).Any()) { orderKey = "ID"; } else { orderKey = _TableView.TableFields.FirstOrDefault().ColumnName; } sqlData = string.Format(Consts.Data.SqlTableData, string.Join(",", _TableView.TableFields.Select(s => s.ColumnName)), orderKey, _TableView.TableKey, (pIndex - 1) * pageNum + 1, pageNum * pIndex, _TableView.SqlWhere); break; case DataTypes.ORACLE: sqlData = string.Format(Consts.Data.OracleTableData, string.Join(",", _TableView.TableFields.Select(s => s.ColumnName)), _TableView.TableKey, (pIndex - 1) * pageNum + 1, pageNum * pIndex, _TableView.SqlWhere); break; } var dt = BaseUnity.QueryForDataTable(_TableView.ConnectionStr, _TableView.DataType, sqlData, null); _TableView.TableData.ItemsSource = dt.DefaultView; } catch (Exception e) { throw (e); } finally { SetMaxIndex(); DisplayPagingInfo(); } }
private void Execute_Click(object sender, RoutedEventArgs e) { try { TableData.Columns.Clear(); TableData.ItemsSource = null; var sql = Context.Text; var data = BaseUnity.QueryForDataTable(ConnectionStr, DataType, sql, null); TableData.Visibility = Visibility.Visible; ErrorText.Visibility = Visibility.Hidden; if (data.Rows.Count > 0) { TableData.ItemsSource = data.DefaultView; } else { foreach (var item in data.Columns) { var column = new DataGridTextColumn(); column.IsReadOnly = false; column.Header = item.ToString(); column.Width = 100; TableData.Columns.Add(column); } } } catch (Exception ex) { TableData.Visibility = Visibility.Hidden; ErrorText.Text = ex.Message; ErrorText.Visibility = Visibility.Visible; } }