信息系统开发与实践、ASP.NET、网页、WebFrom控件

您所在的位置:网站首页 sql里注释 信息系统开发与实践、ASP.NET、网页、WebFrom控件

信息系统开发与实践、ASP.NET、网页、WebFrom控件

2023-06-15 02:42| 来源: 网络整理| 查看: 265

ListView控件

实验目的:

掌握ListView控件的使用

实验内容:

1.创建数据表:在itcast数据库中创建一个Book数据表并设计好数据字段(如下图)

为方便功能的测试,在数据表中添加一些测试数据

 

2.添加表实体类

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

namespace Lesson3

{

    public class BookModel

    {

        public int ID{get; set;}  //主键ID

        public string BookNum{get; set; }//编号

        public string BookName{get; set;}//书名

        public string BookConcern{get; set; }//出版社

public string BookAuthor{ get; set; }//作者

public int BookCount{set; get; }//数量

public decimal BookPrice{get; set; } //价格

    }

定义查询数据方法

在项目中创建一个名为BookAction.cs类,添加SqlHelper.cs工具类,在BookAction类中定义一个Getbooks()方法实现获取数据功能。代码如下

 public List GetBooks(int maximumRows, int startRowIndex)

        {

           

            string sql = "select top(@maximumRows)* from Book where Id not in (select top(@startRowIndex) Id from Book)";

            SqlParameter[] pams ={

                                  new  SqlParameter("@maximumRows",maximumRows),

                                  new  SqlParameter("@startRowIndex",startRowIndex)

                                };

            List bookList = null;

            using (SqlDataReader reader = SqlHelper.ExecuteReader(sql,pams))

            {

                //判断是否查询到数据

                if (reader.HasRows)

                {

                    bookList = new List();

                    //将数据封装到对象中

                    while (reader.Read())

                    {

                        BookModel book = new BookModel();

                        book.ID = reader.GetInt32(0);

                        book.BookNum = reader.GetString(1);

                        book.BookName = reader.GetString(2);

                        book.BookConcern = reader.GetString(3);

                        book.BookAuthor = reader.GetString(4);

                        book.BookCount = reader.GetInt32(5);

                        book.BookPrice = reader.GetDecimal(6);

                        bookList.Add(book);

                    }

                }

            }

            //返回集合

            return bookList;

        }

实现添加数据方法

在BookAction类中定义一个Insertbook()方法实现插入数据功能。代码如下

 public int InsertBook(BookModel book)

        {

            string sql = "insert into Book values(@BookNum,@BookName,@BookConcern,@BookAuthor,@BookCount,@BookPrice)";

            //参数

            SqlParameter[] paras = new SqlParameter[]{

                 new SqlParameter("@BookNum",book.BookNum),

                 new SqlParameter("@BookName",book.BookName),

                 new SqlParameter("@BookConcern",book.BookConcern),

                 new SqlParameter("@BookAuthor",book.BookAuthor),

                 new SqlParameter("@BookCount", book.BookCount),

                 new SqlParameter("@BookPrice",book.BookPrice),

             };

            int count = SqlHelper.ExecuteNonQuery(sql, paras);

            return count;

        }

实现删除数据方法

在BookAction类中定义一个Delete()方法实现删除数据功能。代码如下

 //删除数据

        public int Delete(BookModel book)

        {

            string sql = "delete Book where Id=@Id";

            //参数

            SqlParameter pam = new SqlParameter("@Id", book.ID);

            //执行命令

           int count= SqlHelper.ExecuteNonQuery(sql, pam);

           return count;

        }

定义修改数据方法

在BookAction类中定义一个UpdateBook()方法实现修改数据功能。代码如下

//修改数据

        public int UpdateBook(BookModel book)

        {

            string sql = "update Book set BookNum=@BookNum, BookName=@BookName,BookConcern=@BookConcern,BookAuthor=@BookAuthor,BookCount=@BookCount,BookPrice=@BookPrice where ID=@ID";

           //Sql语句中的参数

            SqlParameter[] paras = new SqlParameter[]{

                 new SqlParameter("@ID",book.ID),

                 new SqlParameter("@BookNum",book.BookNum),

                 new SqlParameter("@BookName",book.BookName),

                 new SqlParameter("@BookConcern",book.BookConcern),

                 new SqlParameter("@BookAuthor",book.BookAuthor),

                 new SqlParameter("@BookCount", book.BookCount),

                 new SqlParameter("@BookPrice",book.BookPrice),

             };

            int count = SqlHelper.ExecuteNonQuery(sql, paras);

            return count;

        }

添加ListView控件

7.1在项目中添加一个名为ListView.aspx的Web窗体页面,从工具箱中找到【数据】分类拖拽一个ListView控件到页面上

7.2新建数据源

在ListView.aspx中单击箭头按钮,在弹出的任务框中单击【选择数据源】的下拉按钮,选中【新建数据项】

7.3选择数据源类型、业务对象

在弹出的对话框中选择【对象】,在【选择业务对象】下拉列表中选中【Lesson3.BookAction】

7.4选择查询、修改、添加、删除方法

在配置数据源对话框中选中【SELECT】,在方法中选择【GetBooks()】方法、选中【UPDATE】,在方法中选择【UpdateBooks()】方法、选中【INSERT】,在方法中选择【InsertBooks()】方法、选中【DELETE】,在方法中选择【Delete()】方法。下图为上述所有过程以及效果图

 

 

 

 

 

配置ListView控件样式

8.1设置布局和样式并启用增删改查功能,因为ID列不需要显示到ListView界面,但是在进行增删改查操作时需要使用到ID属性,所以直接将ID表头注释,并在ListView控件的属性面板找到DataKeyNames属性并将值设置为ID,具体实现如下

 

                                    书号

                                    书名

                                    出版社

                                    作者

                                    数量

                                    价格

                               

8.2注释完ID表头后,还需要注释所有显示ID列数据的标签代码,注释完成后控件就不会显示ID列数据了,效果如图

 

添加分页控件

9.1使用DataPager分页控件,设置PageControlID属性为ListView控件的ID属性,PageSiza属性设置为4表述默认每页显示4条数据,在BookAction类中定义一个TotalCount()方法用于返回Book表中所有数据的条数。代码如下

public int TotalCount()

        {

            string sql = "select count(*) from Book";

            int count = Convert.ToInt32(SqlHelper.ExecuteScalar(sql));

            return count;

        }

9.2将ObjectDataSource控件的EnablePaging属性设置为True表示支持分页,将SelectCountMethod属性设置为BookAction类中TotalCount()方法用于计算总共有多少页数据,为了提高数据显示效率,注释ObjectDataSource控件下SelectParameters标签中的代码,最终效果如下图

 

10、测试项目功能

10.1分页展示:将ListView.aspx页面设置为起始页,可以看出每一页只显示四条数据,当单击【下一页】按钮后,效果如图

 

 

10.2插入数据:添加书名号为20101429、名字为ASP.NET图书信息,如图插入成功

 

10.3修改数据:将C#的数量修改为888,如图修改成功

 

 

10.4删除数据,将.NET就业实战删除,如图所示删除成功

 

11、总结

1、熟悉掌握使用ListView控件,能够使用控件设置数据源

2、了解掌握SelectItemTemplate是为选中项指定显示内容、EditItemTemplate是为编辑项指定要显示的内容,

3、掌握DataPager控件,实现自动完成分页功能,这个控件可以为数据源中的数据生成页码,使用ObjectDataSource控件,设置增删改查的方法。

4、总体实现了一个图书信息列表的功能,掌握ListView控件的增删改查功能以及分页功能。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3