网上购物系统(Task009)——FormView显示商品详细信息

本文详细介绍了在数据库表中添加字段、创建数据访问层类、实现数据获取方法及集成用户控件的过程,旨在提高应用程序的数据管理和显示效率。

源代码:13033480群共享

一、在数据库表Item中添加字段Descn、SupplyTime、SupplyDate、SupplyArea。因为除Descn,其它几个字段内容都差不多,所以,设置一下默认值,以后添加,更新数据库内容时,会更方便。二、在数据集Model类库中添加类ItemDetails.cs。

using System;

namespace WestGarden.Model
{
    public class ItemDetails
    {
        private int itemid;
        private string categoryid;
        private string name;
        private decimal price;
        private string image;
        private string categoryname;

        private string descn;
        private string supplytime;
        private string supplydate;
        private string supplyarea;

        public ItemDetails() { }

        public ItemDetails(int itemid, string categoryid, string name, decimal price, string image, string categoryname,
            string descn, string supplytime,string supplydate,string supplyarea)
        {
            this.itemid = itemid;
            this.categoryid = categoryid;
            this.name = name;
            this.price = price;
            this.image = image;
            this.categoryname = categoryname;

            this.descn = descn;
            this.supplytime = supplytime;
            this.supplydate = supplydate;
            this.supplyarea = supplyarea;
        }

        public int ItemId
        {
            get { return itemid; }
            set { itemid = value; }
        }
        public string CategoryId
        {
            get { return categoryid; }
            set { categoryid = value; }
        }
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
        public decimal Price
        {
            get { return price; }
            set { price = value; }
        }
        public string Image
        {
            get { return image; }
            set { image = value; }
        }
        public string CategoryName
        {
            get { return categoryname; }
            set { categoryname = value; }
        }

        public string Descn
        {
            get { return descn; }
            set { descn = value; }
        }
        public string SupplyTime
        {
            get { return supplytime; }
            set { supplytime = value; }
        }
        public string SupplyDate
        {
            get { return supplydate; }
            set { supplydate = value; }
        }
        public string SupplyArea
        {
            get { return supplyarea; }
            set { supplyarea = value; }
        }
    }
}


 

三、在数据访问层DALItem.cs类中添加函数GetItemDetailsByItemId()

public IList<ItemDetails> GetItemDetailsByItemId(int ItemId)
{

    IList<ItemDetails> itemDetailsByItemId = new List<ItemDetails>();

    SqlParameter parm = new SqlParameter(PARM_ITEM_ID, SqlDbType.Int);
    parm.Value = ItemId;

    using (SqlDataReader rdr = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_ITEMDETAILS_BY_CATEGORY, parm))
{
    		while (rdr.Read())
    		{
        		ItemDetails item = new ItemDetails(rdr.GetInt32(0), rdr.GetString(1), rdr.GetString(2), rdr.GetDecimal(3), rdr.GetString(4), rdr.GetString(5),rdr.GetString(6),rdr.GetString(7),rdr.GetString(8),rdr.GetString(9));
            	itemDetailsByItemId.Add(item);
        }
    }
    return itemDetailsByItemId;
}


四、Controls中添加用户控件ItemDetailsControl.ascx

1、前台代码:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ItemDetailsControl.ascx.cs" Inherits="WestGarden.Web.ItemDetailsControl" %>
<%@ Register TagPrefix="WestGardenControl" Namespace="WestGarden.Web" %>
<div>
<asp:FormView ID="fvwItemDetails" runat="server">
    <ItemTemplate>
        <table cellpadding="0" cellspacing="0">
            <tr>
                <td height="18" width="18">
                </td>
                <td height="18" width="96">
                </td>
                <td height="18" width="18">
                </td>
                <td height="18" width="96">
                </td>
                <td height="18" width="180">
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td rowspan="7" width="96">
                    <asp:Image Width="144" Height="144" ID="imgItem" ImageUrl='<%# Eval("Image") %>'
                        AlternateText='<%# Eval("Name") %>' runat="server" /></td>
                <td width="18">
                </td>
                <td width="96">
                    商品类别:</td>
                <td width="180">
                    <%# Eval("CategoryName") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    商品名称:</td>
                <td width="180">
                    <%# Eval("Name") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    商品价格:</td>
                <td width="180">
                    <%# Eval("Price") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    商品描述:</td>
                <td width="180">
                    <%# Eval("Descn") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    供应时间:</td>
                <td width="180">
                    <%# Eval("SupplyTime") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    供应日期:</td>
                <td width="180">
                    <%# Eval("SupplyDate") %>
                </td>
            </tr>
            <tr>
                <td width="18">
                </td>
                <td width="18">
                </td>
                <td width="96">
                    供应地区:</td>
                <td width="180">
                    <%# Eval("SupplyArea") %>
                </td>
            </tr>
            <tr>
                <td height="18" width="18">
                </td>
                <td height="18" width="96">
                </td>
                <td height="18" width="18">
                </td>
                <td height="18" width="96">
                </td>
                <td height="18" width="180">
                </td>
            </tr>
        </table>
    </ItemTemplate>
</asp:FormView>
</div>
<div><a href='Items.aspx?categoryId=<%=Request.QueryString["categoryId"] %>'>< 返回</a></div>


2、后台代码

using System;
using System.Web;
using System.Web.UI.WebControls;
using WestGarden.DAL;

namespace WestGarden.Web
{
    public partial class ItemDetailsControl : System.Web.UI.UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            int itemKey = int.Parse(Request.QueryString["itemId"]);

            Item item = new Item();
            fvwItemDetails.DataSource = item.GetItemDetailsByItemId(itemKey);
            fvwItemDetails.DataBind();
        }
    }
}


五、Web中添加窗体ItemDetails.aspx并选择母版页MasterPage.master,拖入用户控件ItemDetailsControl.ascx,并在Page_Load()函数中添加代码:

protected void Page_Load(object sender, EventArgs e)
{
    Page.Title = WebUtility.GetCategoryName(Request.QueryString["categoryId"]);
}

版权所有©2012,西园电脑工作室.欢迎转载,转载请注明出处.更多文章请参阅博客http://blog.csdn.com/yousuosi

转载于:https://www.cnblogs.com/WestGarden/archive/2012/05/10/3138429.html

乐播投屏是一款简单好用、功能强大的专业投屏软件,支持手机投屏电视、手机投电脑、电脑投电视等多种投屏方式。 多端兼容与跨网投屏:支持手机、平板、电脑等多种设备之间的自由组合投屏,且无需连接 WiFi,通过跨屏技术打破网络限制,扫一扫即可投屏。 广泛的应用支持:支持 10000+APP 投屏,包括综合视频、网盘与浏览器、美韩剧、斗鱼、虎牙等直播平台,还能将央视、湖南卫视等各大卫视的直播内容一键投屏。 高清流畅投屏体验:腾讯独家智能音画调校技术,支持 4K 高清画质、240Hz 超高帧率,低延迟不卡顿,能为用户提供更高清、流畅的视觉享受。 会议办公功能强大:拥有全球唯一的 “超级投屏空间”,扫码即投,无需安装。支持多人共享投屏、远程协作批注,PPT、Excel、视频等文件都能流畅展示,还具备企业级安全加密,保障会议资料不泄露。 多人互动功能:支持多人投屏,邀请好友加入投屏互动,远程也可加入。同时具备一屏多显、语音互动功能,支持多人连麦,实时语音交流。 文件支持全面:支持 PPT、PDF、Word、Excel 等办公文件,以及视频、图片等多种类型文件的投屏,还支持网盘直投,无需下载和转格式。 特色功能丰富:投屏时可同步录制投屏画面,部分版本还支持通过触控屏或电视端外接鼠标反控电脑,以及在投屏过程中用画笔实时标注等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值