Here two main arguments which needs to be passed to 'Compute' method of the DataTable are :-
1. First Argument - Agregate function with parameter as string - Here the function is 'Sum' but, the argument passed to it should be the DataTable column name on which we need to apply the aggregation.
2. Second argument will remain blank if you do not need to filter it as per any expression.
So if we will see here you have passed value 'SERVICE TAX' to method 'Sum' which mainly i guess is the problem here method 'Sum' will not accept it a column name which contains any white space within it.
Please pass the correct column name to get proper result.
Here is an example which worked for me :-
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
dt.Columns.Add("Name", typeof(String));
dt.Columns.Add("Age", typeof(int));
DataRow dr1 = dt.NewRow();
dr1["Name"] = "name 1";
dr1["Age"] = 20;
dt.Rows.Add(dr1);
DataRow dr2 = dt.NewRow();
dr2["Name"] = "name 2";
dr2["Age"] = 30;
dt.Rows.Add(dr2);
object val = dt.Compute("Sum(Age)", "");
int agetotal = Convert.ToInt32(val);
}
Hope this will definitely of help to you.