您好,欢迎访问三七文档
9.6数据绑定数据绑定技术通常用于在Web页面上显示数据,既将Web控件中用于显示的属性绑定到数据源来显示数据。数据源几乎可以是任意的(数据库、XML文档、表达式、变量等)9.6.1简单数据绑定数据绑定语法:%#数据源%当ASP.NET页面加载时,通过页对象(Page对象)DataBind()方法实现所有控件的数据绑定。例:在页面上显示绑定的变量。bodyformid=Form1method=postrunat=server姓名:%#name%/form/bodypublicclassWebForm6:System.Web.UI.Page{publicstringname=王宏伟;voidPage_Load(Objectsender,EventArgse){Page.DataBind();}}例:绑定label控件formid=Form1method=postrunat=serverasp:DropDownListid=“CityList”runat=“server”asp:ListItem上海/asp:ListItemasp:ListItem北京/asp:ListItemasp:ListItem广州/asp:ListItem/asp:DropDownListasp:buttonText=”提交ID=Button1OnClick=SubmitBtn_Clickrunat=server/您选择的是:asp:labeltext='%#CityList.SelectedItem.Text%'runat=serverID=Label1//formvoidPage_Load(Objectsender,EventArgse){Page.DataBind();}9.6.2使用SqlDataSource数据源控件是用来连接数据库类型的数据源控件,可以访问位于某个关系数据库中的数据,数据库可以是MicrosoftSQLServer、Oracle数据库、OLEDB和ODBC。可以将SqlDataSource控件和用于显示数据的其它控件(如GridView等)结合使用,使用很少的代码可以在ASP.NET网页对数据实现增加、修改、删除、选择、分页、排序、缓存以及筛选操作。例1:几个常用控件的绑定(Bind_kongjian.aspx)方法一:使用数据源控件绑定1.配置数据源:2.在需绑定的控件上选择已配置的数据源:方法二:编程使用控件属性实现绑定protectedvoidPage_Load(objectsender,EventArgse){Stringsqlconn=DataSource=localhost;InitialCatalog=ado_test;UserID=sa;pwd=;IntegratedSecurity=True;SqlConnectionmyConnection=newSqlConnection(sqlconn);myConnection.Open();SqlDataAdaptersql_test=newSqlDataAdapter(select*fromstu_infowherecollege='信息学院',myConnection);DataSetmy_ds=newDataSet();sql_test.Fill(my_ds,stu_info);//DropDownList控件绑定DropDownList1.DataSource=my_ds;DropDownList1.DataMember=stu_info;DropDownList1.DataTextField=speciality;DropDownList1.DataBind();//RadioButtonList控件绑定SqlDataAdaptersql_test1=newSqlDataAdapter(select*fromstudents,myConnection);DataSetmy_ds1=newDataSet();sql_test1.Fill(my_ds1,students);RadioButtonList1.DataSource=my_ds1;RadioButtonList1.DataMember=students;RadioButtonList1.DataTextField=age;RadioButtonList1.DataBind();例2:级联查询(band_query_new.aspx)第一级学院查询:protectedvoidPage_Load(objectsender,EventArgs{if(!IsPostBack){Stringsqlconn=DataSource=localhost;InitialCatalog=ado_test;UserID=sa;pwd=;IntegratedSecurity=True;SqlConnectionmyConnection=newSqlConnection(sqlconn);myConnection.Open();SqlDataAdaptersql_test=newSqlDataAdapter(select*fromzd_college,myConnection);DataSetmy_ds=newDataSet()sql_test.Fill(my_ds,zd_college);DropDownList1.DataSource=my_ds;DropDownList1.DataMember=zd_college;DropDownList1.DataTextField=c_name;DropDownList1.DataBind();myConnection.Close();select*fromzd_specialitywherecollege='+DropDownList1.SelectedItem.Text.ToString().Trim()DropDownList1_SelectedIndexChanged第二级根据学院查专业:select*fromstu_infowherespeciality='+DropDownList2.SelectedItem.Text.ToString().Trim()Button1_Click第三级根据专业查学生:例3:数据绑定保持数据一致性同时插入两个数据表(band_insert_tow.aspx)myConnection.Open();stringsql_textbox1=TextBox1.Text.ToString().Trim();intsql_textbox2=Convert.ToInt16(TextBox2.Text);stringsql_textbox3=TextBox3.Text.ToString().Trim();//插入第一张表stringsql1=insertintostudents(name,age,stu_id)values('+sql_textbox1+',+sql_textbox2+,'+sql_textbox3+');SqlCommandmyCommand1=newSqlCommand(sql1,myConnection);myCommand1.ExecuteNonQuery();//插入第二张表stringsql2=insertintostu_info(college,speciality,stu_id,name)values('+DropDownList1.SelectedItem.Text.ToString().Trim()+','+DropDownList2.SelectedItem.Text.ToString().Trim()+','+sql_textbox3+','+sql_textbox1+');SqlCommandmyCommand2=newSqlCommand(sql2,myConnection);myCommand2.ExecuteNonQuery();GridView控件:该控件以表格的形式显示数据库中的数据,其中每列表示一个字段,每行表示一条记录。可以对记录中的行实现增加、修改、删除、选择功能,提供对列(字段)排序功能,可实现分页显示。通常与数据源控件结合使用,简化了编程。默认情况下GridView总是按照数据源的结构显示数据。9.7复杂数据绑定控件例1:利用GridView控件编辑数据表编辑数据表的几个条件:①、是否允许访问包括数据表的网页。②、数据库和表是否给操作者赋予了编辑的权限。③、在被编辑的数据表中是否确定了关键字。①利用“自动套用格式”设置页面显示效果选定控件,利用“自动套用格式”设置页面效果选择方案,设置页面效果。②绑定数据源控件选定高级两个复选框同时选定选定绑定的数据源绑定数据源控件后系统自动生成的删除、更新和插入语句。绑定数据源控件后,系统自动生成的删除、更新和插入语句。③设置控件中各列显示的字段AutoGenerateColumns属性:默认值为True,即:一旦指定了GridView控件的数据源,便自动生成相应的列。在有些情况下,不希望自动生成列,而是通过GridView控件的Columns属性的“编辑列”命令来设置相关的列,此时要将AutoGenerateColumns属性设为False。当字段只读时,不可编辑。并进入[源视图]修改SQL更新语句取消此选项,否则会在控件中出现重复的字段④使用GridView控件的属性进行分页选择控件的属性,进行分页相关设置。PagerSettings属性:使用PagerSettings属性设置GridView控件中分页导航行。有若干子属性。正确地使用这些属性可以实现分页功能。Mode属性:要使用的分页显示的类型,有4种取值:NextPrevious:字符显示下一页按钮和上一页按钮。NextPreviousFirstLast:字符显示下一页按钮、上一页按钮、第一页按钮和最后一页按钮。Numeric:用数字编号的链接按钮分页显示数量。NumericFirstLast:分页显示带数字编号的链接按钮、第一个链接按钮和最后一个链接按钮。当Mode属性设置为NextPrevious、NextPreviousFirstLast值时,可以通过设置PagerSettings属性的子属性来定义字符按钮显示的文字:FirstPageText:第一页按钮的文字。PreviousPageText:上一页按钮的文字。NextPageText:下一页按钮的文字。LastPageText:最后一页按钮的文字。也可以通过设置PagerSettings属性的以下属性为字符按钮显示图像:FirstPageImageUrl:为第一页按钮显示的图像的URL。PreviousPageImageUrl:为上一页按钮显示的图像的URL。NextPageImageUrl:为下一页按钮显示的图像的URL。LastPageImageUrl:为最后一页按钮显示的图像的URL。PageSize属性:设置一个页面中显示的记录个数。PageButtonCount属性:分页界面中显示的页数。PageIndex属性:获取或设置当前的页号。⑤使用GridView控件的属性进行排序选择启用排序后,数据表各列的标题将自动转换为连接指针。程序运行时用鼠标单击某列的标题,则以该列字段为关键字进行排序。选择控件的属性,进行排序的相关设置。⑥使用GridView控件的属性添加编辑功能运行时,当选择编辑时,需要更新的字段值会填入textbox框。例2:在GridView控件中显示照片(databind_GridView_image.aspx)数据库设计:配置数据源选择数据源绑定字段选择控件的DataImageUrlField属性,与数据表字段绑定。添加ImageField,并改变其属性例3:完成页面的输入,并将输入结果在GridView控件中
本文标题:数据库高级操作
链接地址:https://www.777doc.com/doc-2333361 .html