数据绑定与数据库开发基础01
来源:互联网 发布:什么是网络课程 编辑:程序博客网 时间:2024/05/16 09:33
数据绑定与数据库开发基础
DataContext数据上下文
定义类,定义属性;new一个类的实例,给要绑定的控件设定DataContext,如控件名.DataContext=实例名;XAML中要绑定数据属性,如Text=“ {Binding Name(属性名)}”
INotifyPropertyChanged接口:是.net内置的接口,数据绑定会检测DataContext是否实现了INotifyPropertyChanged接口,如果实现了,就会监听PropertyChanged得知属性变化
if(PropertyChanged!= null)
{
PropertyChanged(this,newPropertyChangedEventArgs(“Name”))
}
尽量使用这种方式,少给控件直接赋值
ListBox
Listbox 显示的集合是ItemsSource属性,不是DataContext,如listbox1.ItemsSource=list
默认是把每一项的对象ToString()显示,可以设定DisplayMemberPath显示某个属性
SelectedItem获得的是选中行的对应对象,没有选中行就是null;SelectedValue获得的是选中行对应的对象的SelectedValuePath标志的属性的属性值
DataGrid
AutoGenerateColumns=false禁止自动创建列
<DataGrid.Columns>添加列
<DataGridComboBoxColumnx:Name=” ..” SelectedItemBinding=”{Bingding ..}”
x:Name是自定义的名字,在代码页可访问,并绑定数据源
SQL Server Management Studio
是sqlserver的管理器,不是服务器
ADO.NET
Windows验证:连接字符串DataSource=.;Database=test;Integrated Security=True
SQL验证:
using(SqlConnection conn=new SqlConnection(@”Data Source=.;Initial Catalog=mydb;UserID=sa;Password=1233”)
{
conn.Open();
using(SqlCommand cmd=conn.CreateCommand())
{
cmd.CommandText=” ..”;//执行语句
cmd.ExecuteNonQuery();
}
}
using 资源回收,实现了IDisposible接口
output inserted.Id获取自增字段的Id值
insert into tablename(name,age)output inserted.Id values(“”,10)
DataReader
SqlDataReaderreader=cmd.ExecuteReader();
While(reader.Read())
{
String name=reader.GetString(1)
}
保持与数据库服务器的连接
查询结果是放到数据库中,没有放到客户端,初始指针指向第一条数据之前,只要没有移到最后一条之后,就返回true
reader的GetString、GetInt32等方法只接受整数参数,也就是列的序号,用GetOrdinal方法根据列名动态得到序号
参数化查询防止sql注入
cmd.CommandText=”selectage from table where Name=@name”;
cmd.Parameters.Add(newSqlParameter(“@Name”,txtname.text))或者
cmd.Parameters.AddWithValue(“@Name”,txtname.text)
DataSet离线数据集
将查询结果填充到本地内存中,小数据量,减轻数据库服务器的压力
DataSet相当于本地的一个复杂集合(List<int>)
DataTabletable=dataset.Tables[0]
DataRowCollectionrows=table.Rows
for(inti=0;i<rows.count;i++)
{
DataRow row=rows[i];
stirng name=(string)row[“name”];
}
App.config
配置文件
<configuration>
<connectionStrings>
<add name=”connstr”connectionString=”..” />
</connectionStrings>
</configuration>
添加System.Configuration的引用
stringconnstr=ConfigurationManager.ConnectionStrings[“connstr”].ConnectionString
SqlHelper
手写SqlHelper
public staticobject ExecuteScalar(string sql,params SqlParameter[] parameters)
{
using(SqlConnectionconn=new SqlConnection(connstr))
{
conn.Open();
using (SqlCommandcmd=conn.CreateCommand())
{
cmd.CommandText=sql;
cmd.Parameters.AddRange(parameters);
returncmd.ExecuteScalar();
}
}
}
Params:长度可变参数
- 数据绑定与数据库开发基础01
- 传智播客数据绑定和数据库开发基础(第四季)
- C#进阶WPF基础三 WPF数据绑定、数据库基础
- wpf数据绑定和数据库基础-学习笔记1
- asp.net控件开发基础(17) --------初识数据绑定控件
- asp.net控件开发基础(19) --------数据列表绑定控件
- asp.net控件开发基础(17) --------初识数据绑定控件
- asp.net控件开发基础(17) --------初识数据绑定控件
- [Win8]Windows8开发笔记(八):数据绑定的基础
- 微信小程序开发教程(基础篇)7-数据绑定上
- 微信小程序开发教程(基础篇)8-数据绑定下
- Blend基础-数据绑定
- Blend基础-数据绑定
- WPF 数据绑定基础
- 数据绑定基础
- 数据绑定的基础
- Vue基础:数据绑定
- vue.js基础-处理用户输入与双向数据绑定
- HDU3397Sequence operation线段树解法
- (TopkOnJstorm)第五周工作报告:2014-08-4~2014-08-10
- mysql 5.7.4 my.ini 示例
- 二分解Codeforces Round #262 (Div. 2)C. Present
- hdu 1856 More is better
- 数据绑定与数据库开发基础01
- LCM~~~!!!
- 正则表达式
- uva147 - Dollars(完全背包)
- BigDecimal
- OSI七层模型详解
- VC多定时器的使用及停止开启定时器的方法
- Navicat如何导出数据库的svg、pdf,png图片
- 测试工程师如何进行需求评审