ในการพัฒนาแอปพลิเคชันเว็บ เว็บไซต์อีคอมเมิร์ซส่วนใหญ่มีโมดูลฟังก์ชันการช็อปปิ้งออนไลน์ ดังนั้นการเขียนโปรแกรมตะกร้าสินค้าจึงมีความสำคัญมาก
ฟังก์ชั่นของตะกร้าสินค้าไม่มีอะไรมากไปกว่าการนำฟังก์ชั่นเหล่านี้ไปใช้: เพิ่มวัตถุ แก้ไขวัตถุ ลบวัตถุ ตรวจสอบรถเข็น ดูรถเข็น ฯลฯ ในบทความนี้ เราจะอธิบายฟังก์ชันสามประการของ "การเพิ่มวัตถุ" "การลบวัตถุ" และ "การดูรถเข็น" แน่นอนว่านี่เป็นเพียงคลาสตะกร้าสินค้าธรรมดาๆ ที่ไม่มีฟังก์ชันมากมายและไม่สมบูรณ์แบบเพียงพอ คุณต้องขยายรากฐานนี้เพื่อทำให้ฟังก์ชันต่างๆ สมบูรณ์ยิ่งขึ้น
C# เป็นภาษา OOP (Object Oriented Programming) ที่สมบูรณ์ นอกจากนี้ยังเป็นภาษาหลักของ Microsoft และยังสามารถกล่าวได้ว่าเป็นหนึ่งในภาษาที่ได้รับความนิยมมากที่สุดในอนาคต โค้ดตัวอย่างในบทความนี้เขียนด้วยภาษา C# ต่อไปนี้คือการสร้างคลาสตะกร้าสินค้า ซึ่งทำหน้าที่เพิ่มออบเจ็กต์ การลบออบเจ็กต์ และดูออบเจ็กต์ตะกร้าสินค้าให้สมบูรณ์ ชื่อไฟล์คือ ShoppingCart.cs:
การใช้ระบบ;
โดยใช้ System.Web.UI;
ใช้ System.Collections; // ต้องแนะนำเนมสเปซเมื่อใช้
เนมสเปซคลาส Hashtable WendwCart // ชื่อเนมสเปซ
-
[สามารถซีเรียลไลซ์ได้]
คลาสสาธารณะ Stat_Class{ //กำหนดคลาสผลิตภัณฑ์และบันทึกแอตทริบิวต์ต่างๆ ของสตริงผลิตภัณฑ์ ShangPinID; //Product ID
String Sp_Name; // ชื่อผลิตภัณฑ์ทศนิยม Sp_Price; // ราคาผลิตภัณฑ์ int Sp_Quan; // หมายเลขสตริงสาธารณะของปริมาณผลิตภัณฑ์
รับ{คืน ShangPinID;}
ตั้งค่า {ShangPinID = ค่า;}
}
สตริงสาธารณะ ShangpinName{
รับ {ส่งคืน Sp_Name;}
ตั้งค่า {Sp_Name = ค่า;}
}
ราคาทศนิยมสาธารณะ{
รับ{คืน Sp_Price;}
ตั้ง {Sp_Price=value;}
}
ปริมาณ int สาธารณะ{
รับ {ส่งคืน Sp_Quan;}
ตั้งค่า {Sp_Quan = ค่า;}
}
Stat_Class สาธารณะ (String ItemID, String ShangpinName, decimal Price, int quantity) {//วิธีการก่อสร้าง เริ่มต้นแต่ละแอตทริบิวต์ของ
productShangPinID=ItemID;
Sp_Name=ชางปินชื่อ;
Sp_Price=ราคา;
Sp_Quan=ปริมาณ;
-
}
[สามารถซีเรียลไลซ์ได้]
ShoppingCart ระดับสาธารณะ{
Hashtable Cart_Orders=ใหม่ Hashtable();
คำสั่ง ICollection สาธารณะ{
รับ{return Cart_Orders.Values;}
}
TotalCost ทศนิยมสาธารณะ{ //คำนวณราคารวมที่ได้รับ{
ผลรวมทศนิยม=0;
foreach(รายการพจนานุกรมใน Cart_Orders){
ลำดับ Stat_Class=(Stat_Class)entry.Value;
รวม+=(สั่ง.ราคา*สั่ง.ปริมาณ);
-
รวมผลตอบแทน;
-
} }
โมฆะสาธารณะ AddItem (คำสั่ง Stat_Class) {// เพิ่มวิธีวัตถุ คำสั่ง Stat_Class = ( Stat_Class) Cart_Orders [Order.ItemID];
ถ้า(สั่ง!=null)
order.Quantity+=ออเดอร์.จำนวน;
อื่น
Cart_Orders.Add(Order.ItemID,คำสั่งซื้อ);
}
โมฆะสาธารณะ DeleteItem (String ItemID) {// ลบวัตถุ if (Cart_Orders [ItemID]! = null)
Cart_Orders.Remove(ItemID);
-
-
-
คอมไพล์ไฟล์ ShoppingCart.cs:
csc /t:library /out: ShoppingCart.dll ShoppingCart.cs
ปรับใช้คอมโพเนนต์ ShoppingCart.dll ไปยังไดเร็กทอรี bin
หมายเหตุ:
เพื่อให้แน่ใจว่าสถานะเซสชันสามารถบันทึกได้อย่างมีประสิทธิภาพไม่ว่าจะใช้โหมดเซสชันใดก็ตาม การทำให้เป็นซีเรียลไลซ์แบบอนุกรมจะถูกเพิ่มที่ด้านหน้าคลาสคำจำกัดความ
นอกจากนี้ เพื่อให้ผู้ใช้แต่ละรายสามารถสร้างอินสแตนซ์ของคลาสเมื่อเข้าสู่ระบบ ให้เพิ่ม:<%@ Import Namespace="WendwCart" %>
ลงในไฟล์ Global.asax
<%@ Application Codebehind="Global.asax.cs" Inherits="HDLab.BBS.Global" %>
<script Language="C#" runat="server">
โมฆะ Session_Start()
-
เซสชัน["MyShoppingCart"]=ตะกร้าสินค้าใหม่();
-
</script>
โดยที่ WendwCart คือชื่อเนมสเปซของตัวควบคุม ในบทความถัดไป "การพัฒนาโปรแกรมรถเข็นช็อปปิ้ง - การเรียกคลาสรถเข็นช็อปปิ้ง" เราจะอธิบายวิธีใช้คอมโพเนนต์ ShoppingCart.dll ในหน้า ASP.NET เพื่อเพิ่มและลบออบเจ็กต์