0

私はshopping_cart.aspx.csファイルであり、クラスファイルspcart.csもあります。

Shopping_cart.aspx.cs

public partial class Ui_ShoppingCart : System.Web.UI.Page
{
    public int tax = 0;   
    public int subtotal = 0;
    public int granttotal = 0;  

    protected void Page_Load(object sender, EventArgs e)
         {
             -------------------------/////some code
         }
   --------------------------------/////some code
}

spcart.cs

public class Spcart
    {     
        public void updatecart(int pid,int qty)
         {
             ---------/////some code
         }
    }

class Ui_ShoppingCart、Spcartクラスの変数tax、subtoal、granttotalsにいくつかの値を設定したいので、試してみました->

Ui_ShoppingCart.tax

しかし、それは機能しませんでした.........
これらの変数を設定する他の方法はありますか?
誰かがこれについて私を助けることができますか?

4

2 に答える 2

0

逆にすべきだと思います

protected void Page_Load(object sender, EventArgs e)
{
   SpCart cart = new SpCart();
   cart.updateCart(124, 4);

   tax = cart.getComputedTax();
   subTotal = cart.getSubTotal();
   ...
}

これらの変数はSpCartコードから独立している必要があります。

public class Spcart
{     
     public void updatecart(int pid,int qty)
     {
         ---------/////some code
     }

     public int getComputedTax()
     {
       //can compute tax here
       int tax = whatever;
       return tax;
     }
}

計算ロジックは、他のクラスに分離することができます

于 2012-10-22T21:23:46.650 に答える
0

「Spcart」クラスから「Ui_ShoppingCart」で宣言された「tax」プロパティにアクセスしようとしていると思います。それはできません。代わりに、updatecartメソッドに追加のパラメーターとしてそれらを渡す必要があります。

Spcart cart = new Spcart();
cart.updatecart(pid,qty,tax);

または、「spcart」クラスの他のメソッドで税金が使用されている場合は、コンストラクターで初期化します。

public class Spcart
{     
 private int _tax = 0;
 public Spcart(int tax)
 {
   _tax = tax;
 }
 public void updatecart(int pid,int qty)
 {
    int amount = qty + _tax;
 }
}

そして、を使用して呼び出す

Spcart cart = new Spcart(tax);
cart.updatecart(pid,qty);
于 2012-10-22T21:24:21.930 に答える