DevExpress数据源SqlDataSource使用
来源:互联网 发布:数据存储管理软件 编辑:程序博客网 时间:2024/05/22 01:50
DevExpress对数据源进行了重新封装产生了只读数据源SqlDataSource,相较于传统的ADO.NET更易于使用。
SqlDataSource组件旨在创建和配置数据库以访问WinForms应用程序中的各种数据感知控件。使用它来提供对DevExpress.XtraGrid.GridControl,DevExpress.XtraTreeList.TreeList,DevExpress.XtraCharts.ChartControl或可以通过数据源配置向导配置的任何其他DevExpress控件的数据库访问。
SqlDataSource支持众多数据提供者,包括:
Amazon RedshiftFirebirdGoogle BigQueryIBM DB2Microsoft Access 2007Microsoft Access 97Microsoft SQL ServerMicrosoft SQL Server Compact EditionMySQLOraclePervasive PSQLPostgreSQLSAP Sybase AdvantageSAP Sybase ASESAP Sybase SQL AnywhereSQLiteTeradataVistaDBVistaDB5XML file
使用方式:
1、创建SqlDataSource
将SqlDataSource控件直接拖拉到winform页面上,点击右上角小三角形,配置连接(Configure Connection...),配置sql查询(Manage Queries...)等等,详见https://documentation.devexpress.com/CoreLibraries/DevExpress.DataAccess.Sql.SqlDataSource.class
配置连接成功后会在App.config文件中生成连接字符串,如下所示:
<?xml version="1.0" encoding="utf-8" ?><configuration> <connectionStrings> <add name="localhost_Connection" connectionString="XpoProvider=MySql;server=localhost;port=3306;user id=root; password=xxxxxx; database=historydata;persist security info=true;CharSet=utf8;" /> </connectionStrings> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup> <appSettings> <add key="flag" value="false" /> </appSettings></configuration>
App.config使用xml文件风格,connectionstrings下包括该项xml名字,数据库类型,用户名密码等,这里的名字等会还需要用到。
2、手动建立查询
由于是只读的,只能使用SqlDataSource进行查询,在第一步基础上添加代码,或者直接新建SqlDataSource
string sql = "SELECT * FROM table";//sql语句
query.Name = "trend"; query.Sql = sql; SqlDataSource sqlDataSourceTrend = new SqlDataSource(); sqlDataSourceTrend.ConnectionName = "localhost_Connection";//用到了connectionstrings下的连接名 sqlDataSourceTrend.Queries.Add(query); sqlDataSourceTrend.Fill();
查询后怎样使用数据呢?这里我们用datatable这个数据格式来读取数据。3、使用DataTable读取数据
ITable src = sqlDataSourceTrend.Result["trend"]; DataTable table = new DataTable("trend"); foreach (IColumn column in src.Columns) table.Columns.Add(column.Name, column.Type); foreach (IRow row in src) table.Rows.Add(row.ToArray());DataTable是存在内存中的表结构,可以方便地读取数据或作为控件的数据源,如:
lookUpEdit7.Properties.ValueMember = "ScanTime";//选取要绑定的列 lookUpEdit7.Properties.DisplayMember = "ScanTime"; lookUpEdit7.Properties.DataSource = table;//将datatable作为数据源
或者利用数据进行运算
int holeCount = table.Rows.Count; string ScanTime = table.Rows[0]["ScanTime"].ToString(); string ScanDeskId = table.Rows[0]["ScanDeskId"].ToString(); for (int i = 0; i < 3; i++) { for (int j = 0; j < holeCount; j++) {double tempDouble = Convert.ToDouble(table.Rows[j][tempStr[i][0]].ToString()) - Convert.ToDouble(table.Rows[j][tempStr[i][1]].ToString());}}调用时使用datatable.rows[行数][‘列名’]这种格式即可。更多dataTable教程请见 点击打开链接
- DevExpress数据源SqlDataSource使用
- DevExpress SQLDataSource
- .NET学习(四)数据源控件SqlDataSource的使用
- SqlDataSource 数据源控件
- 数据源控件 SqlDataSource
- DevExpress ASPxGridView 使用文档四:数据源
- DevExpress ASPxGridView 使用文档四:数据源
- DevExpress ASPxGridView 使用文档四:数据源
- SqlDataSource数据源控件参数问题
- 数据源(SqlDataSource 与 GridView)
- 关于DropDownList绑定SqlDataSource数据源
- DevExpress.XtraGrid.GridControl 数据源
- 数据源控件(ObjectDataSource, SqlDataSource)数据统计
- 数据源控件SqlDataSource,ObjectDataSource基础11.22
- Gridview+sqldatasource使用注意事项
- 使用SqlDataSource查询记录
- sqldatasource使用心得
- SqlDataSource
- 【初学者】HTML常用组件——轮播组件
- LeetCode(657)Judge Route Circle
- hdu6156 Palindrome Function 数位dp
- HDU
- 内部链接和外部链接
- DevExpress数据源SqlDataSource使用
- 最大的奇约数
- android视频播放
- 每天听本书
- 树形DP初步(2)
- 零基础学习GitHub桌面版-4 怎么给开源项目贡献代码?
- JZOJ5344. 【NOIP2017模拟9.3A组】摘果子 树上依赖背包
- 【s5p4418嵌入式学习】分步编译之安卓06
- Dev C++编写的Windows窗口Hello,World程序