如何从asp.net中的.aspx.cs调用.cs文件

时间:2015-02-09 21:24:57

标签: c# asp.net .net

是否可以在类文件中使用标签存储此方法?  例如:

aspx.cs

   private void addSalat()
    {


                    decimal sum= Convert.ToDecimal(Label6.Text);
                    decimal sum2= Convert.ToDecimal(Label17.Text);
                    decimal sum3= Convert.ToDecimal(Label54.Text);
                    decimal sum4= Convert.ToDecimal(Label66.Text);
                    decimal sum5= Convert.ToDecimal(Label78.Text);
                    decimal sum6= Convert.ToDecimal(Label90.Text);
                    decimal sum7= Convert.ToDecimal(Label102.Text);
                    decimal sum8= Convert.ToDecimal(Label114.Text);
                    decimal sum9= Convert.ToDecimal(Label126.Text);

                    decimal sum= sum+ sum2+
                        sum3+ sum4+ sum5+ sum6+ sum7+ sum8
                        + sum9;

                    Label42.Text = sum.ToString();
                }

//在这里做计算并在aspx.cs文件中调用此方法,我不知道如果可能的话如何放置标签:

 public class Class1
{
    public void Sum()
    {

                    decimal sum= Convert.ToDecimal(Label6.Text);
                    decimal sum2= Convert.ToDecimal(Label17.Text);
                    decimal sum3= Convert.ToDecimal(Label54.Text);
                    decimal sum4= Convert.ToDecimal(Label66.Text);
                    decimal sum5= Convert.ToDecimal(Label78.Text);
                    decimal sum6= Convert.ToDecimal(Label90.Text);
                    decimal sum7= Convert.ToDecimal(Label102.Text);
                    decimal sum8= Convert.ToDecimal(Label114.Text);
                    decimal sum9= Convert.ToDecimal(Label126.Text);

                    decimal sum= sum+ sum2+
                        sum3+ sum4+ sum5+ sum6+ sum7+ sum8
                        + sum9;

                    Label42.Text = sum.ToString();
    }
}

2 个答案:

答案 0 :(得分:2)

你必须做这样的事情:

private decimal Sum(decimal firstValue, params decimal[] moreValues)
{
    decimal val = firstValue;

    return val + moreValues.Sum(); // Note this is not recursion. It is calling the LINQ Sum() function.
}

并称之为:

Sum(5.2); // returns 5.2
Sum(6, 10); // returns 16
Sum(1,2,3); // returns 6

或类似的东西:

decimal sum = Sum(Convert.ToDecimal(Label6.Text), 
                  Convert.ToDecimal(Label17.Text), 
                  Convert.ToDecimal(Label54.Text)
                  // and so forth
                  );

答案 1 :(得分:0)

我会把它留在页面的代码隐藏中。由于您基本上只是添加值,因此将其拆分为不同的类并不会带来很多好处。如果您正在进行更复杂的计算,需要进行单元测试等,那么我会考虑拆分它。

您还可以使用Linq对值进行求和,使代码更清晰:

decimal sum = new [] {Label6, Label17, Label54, Label66, Label78, Label90, Label102, Label114, Label126}
              .Sum(lbl => Convert.ToDecimal(lbl.Text));