首先聲明的是,這是我第一個(gè)與別人合作的.net項(xiàng)目,另一個(gè)人做的是后臺(tái)管理,我做的前臺(tái),這是一個(gè)電子商務(wù)的系統(tǒng),主要實(shí)現(xiàn)的功能是查看商品以及購物功能。
首先看一下我截取的項(xiàng)目部分商品數(shù)據(jù)列表(數(shù)據(jù)全是虛擬數(shù)據(jù),畢竟不是物流公司:D)
這種商品列表,雖然沒有天貓,淘寶那種列表那么好,但是現(xiàn)在的學(xué)者,比如我這種,做出來的效果大多是這樣子的,那么他是怎么實(shí)現(xiàn)的呢。
首先是控件:Listview,Gridview,etc。它們各有各的不同優(yōu)缺點(diǎn),具體根據(jù)需求或是自己的需要來選擇,我用的是第三方控件Radlistview。上代碼:
<telerik:RadListView ID="RadListView1" runat="server" CSSClass="Radbox"> <ItemTemplate> <a href="aspx/GoodsInfo.aspx?id=<%#Eval("Goods_ID")%>" class="good-item"> <img src="<%#Eval("Goods_pic")%>" class="goods-img"/> <div class="goods-content"> <span class="good-title"><%#Eval("Goods_name")%></span> <span class="good-desc"><%#Eval("Goods_info")%></span> <ins class="good-PRice"> <span class="symbol">¥</span> <%#Eval("In_store_price")%> </ins> <span class="price-value"> 市價(jià)<del>¥<%#Eval("Market_price")%></del></span><span class="goods-foot"><span class="num">9 </span> <span class="text">人已團(tuán)購</span> </span> </div> </a> </ItemTemplate> </telerik:RadListView>
這就是Radlistview控件,在空間之間寫的,是每個(gè)商品的信息,比如第一行 <a href="aspx/GoodsInfo.aspx?id=<%#Eval("Goods_ID")%>" class="good-item">是一個(gè)大的鏈接,注意此標(biāo)簽結(jié)束位置在底下,剛開始的傳值是URL傳值,<%#Eval("Goods_ID")%>這是綁定數(shù)據(jù)庫中字段的方法,可以在頁面顯示出數(shù)據(jù)庫對(duì)應(yīng)字段下的數(shù)據(jù),其中("Goods_ID")是數(shù)據(jù)庫字段名。
public void Dataload() { DataSet ds = bllgoods.GetList(6, " IN_group_buying = 1", "Uptime desc"); RadListView1.DataSource = ds; RadListView1.DataBind(); }
因?yàn)槭侨龑蛹軜?gòu)做的,所以用了三層架構(gòu)中的“獲取前幾行數(shù)據(jù)”的方法
該方法有三個(gè)參數(shù),如果不用三層架構(gòu),可以直接在本頁寫方法:
public DataSet GetList(int Top, string strWhere, string filedOrder) { StringBuilder strSql = new StringBuilder(); strSql.Append("select "); if (Top > 0) { strSql.Append(" top " + Top.ToString()); } strSql.Append(" Goods_ID,Goods_name,Market_price,Group_Buying_Price,In_store_price,Stock,Uptime,Goods_pic,Goods_info,Good_Brand,IN_group_buying,GS2,Sales_volume,GS_id,Message_ID,Color,Size,QQp,(CASE WHEN datalength(Goods_name) <= 12 THEN Goods_name ELSE SUBSTRING(Goods_name, 1, 12) + '...' END) AS Goods_name1 "); strSql.Append(" FROM GoodsInfo "); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } strSql.Append(" order by " + filedOrder); return DbHelperSQL.Query(strSql.ToString()); }
最后記得在前面加
OK,完成了,就這么多。
因?yàn)槲疫€在學(xué)習(xí)狀態(tài),還是高三的一名學(xué)生,而且這是我第一次在博客園寫東西,想為自己的學(xué)習(xí)或項(xiàng)目開發(fā)留下記錄,所涉及到的知識(shí)不是很廣泛,可能在博客園中的大牛面前班門弄斧了,希望大牛們能指點(diǎn)指點(diǎn),希望能對(duì)大家有所幫助吧!
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注