从另一个类访问和设置类中的变量

时间:2012-10-22 21:07:51

标签: c# asp.net class variables partial-classes

我是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类的资助,所以我试过 - >

Ui_ShoppingCart.tax

但它没有奏效......... 有没有其他方法来设置这些变量??? 任何人都可以帮我这个吗?

2 个答案:

答案 0 :(得分: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;
     }
}

计算逻辑仍然可以分成其他一些类

答案 1 :(得分: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);