No desenvolvimento de aplicações web, a maioria dos sites de comércio eletrônico possui módulos funcionais de compras online, por isso a escrita de programas de carrinho de compras é muito importante.
A função do carrinho de compras nada mais é do que implementar estas funções: adicionar objetos, modificar objetos, excluir objetos, verificar carrinhos, visualizar carrinhos, etc. Neste artigo explicaremos as três funções de “adicionar objetos”, “excluir objetos” e “visualizar carrinhos”. Claro, esta é apenas uma classe simples de carrinho de compras, que não tem muitas funções e não é perfeita o suficiente. Você precisa expandir essa base para tornar suas funções mais completas.
C# é uma linguagem OOP (Programação Orientada a Objetos) completa. É também a linguagem carro-chefe da Microsoft e também pode ser considerada uma das linguagens mais populares no futuro. O código de exemplo neste artigo foi escrito em C#. O seguinte é criar uma classe de carrinho de compras, que completa as funções de adicionar objetos, excluir objetos e visualizar objetos de carrinho de compras. O nome do arquivo é ShoppingCart.cs:
using System;
usando System.Web.UI;
using System.Collections //O namespace deve ser introduzido ao usar o
namespace da classe Hashtable WendwCart //O nome do namespace
{
[Serializável]
public class Stat_Class{ //Define a classe do produto e salva vários atributos do produto String ShangPinID;
String Sp_Name; // Nome do produto decimal Sp_Price // Preço do produto int Sp_Quan; // Quantidade do produto public String ItemID{
obter{retornar ShangPinID;}
definir{ShangPinID=valor;}
}
string pública ShangpinName{
obter{retornar Sp_Name;}
definir{Sp_Nome=valor;}
}
preço decimal público{
obter{retornar Sp_Price;}
definir{Sp_Price=valor;}
}
public int Quantidade{
obter{retornar Sp_Quan;}
definir{Sp_Quan=valor;}
}
public Stat_Class(String ItemID,String ShangpinName,decimal Price,int Quantidade){ //Método de construção, inicializa cada atributo do
productShangPinID=ItemID;
Sp_Name=ShangpinNome;
Sp_Price=Preço;
Sp_Quan=Quantidade;
}
}
[Serializável]
classe pública ShoppingCart{
Tabela de hash Cart_Orders=new Tabela de hash();
Pedidos de ICollection públicos{
obter{return Cart_Orders.Values;}
}
public decimal TotalCost{ //Calcula o preço total obtido{
total decimal=0;
foreach(Entrada de DicionárioEntry em Cart_Orders){
Ordem Stat_Class=(Stat_Class)entrada.Valor;
total+=(pedido.Preço*pedido.Quantidade);
}
retorno total;
}
}
public void AddItem(Stat_Class Order){ //Adicionar método de objeto Stat_Class order=( Stat_Class)Cart_Orders[Order.ItemID];
if(pedido!=nulo)
pedido.Quantidade+=Pedido.Quantidade;
outro
Cart_Orders.Add(Order.ItemID,Pedido);
}
public void DeleteItem (String ItemID){ //Excluir objeto if(Cart_Orders[ItemID]!=null)
Cart_Orders.Remove(ItemID);
}
}
}
Compile o arquivo ShoppingCart.cs:
csc /t:library /out: ShoppingCart.dll ShoppingCart.cs
implanta o componente ShoppingCart.dll no diretório bin.
Nota:
Para garantir que o estado da sessão possa ser salvo efetivamente, independentemente do modo de sessão usado, a serialização serializável é adicionada na frente da classe de definição.
Além disso, para permitir que cada usuário crie uma instância da classe ao efetuar login, adicione:<%@ Import Namespace="WendwCart" %>
ao arquivo Global.asax
<%@ Aplicação Codebehind="Global.asax.cs" Inherits="HDLab.BBS.Global" %>
<script Language="C#" runat="server">
void Session_Start()
{
Session["MeuCarrinhodeCompras"]=novoCarrinhodeCompras();
}
</script>
Onde WendwCart é o nome do namespace do controle. No próximo artigo "Desenvolvimento de Programa Carrinho de Compras - Chamando a Classe Carrinho de Compras", explicaremos como utilizar o componente ShoppingCart.dll na página ASP.NET para adicionar e excluir objetos.