In this blog we will know how to display Sum of two columns values in Gridview.
Scenario
Table structure
Create table test (id int, one int, two
int)
I have 2 text box and one insert button .on clicking
to insert button values of both the two
text box got saved in database and I can display them
on gridview . Now
i want that there should be a 3rd column in Gridview which display the total of
two numbers
Desired Output
id
|
one
|
two
|
Sum
|
1
|
1
|
2
|
3
|
2
|
1
|
1
|
2
|
3
|
1
|
4
|
5
|
4
|
5
|
5
|
10
|
5
|
10
|
10
|
20
|
<%@ Page Language="C#"
AutoEventWireup="true"
CodeBehind="Default.aspx.cs"
Inherits="Sum._Default"
%>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
>
<head runat="server">
<title>Untitled
Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="Enter first Number" Width="150px"></asp:Label>
<asp:TextBox ID="txtOne" runat="server" Width="150px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="txtOne" ErrorMessage="Enter first Number"></asp:RequiredFieldValidator>
<br />
<asp:Label ID="Label2" runat="server" Text="Enter second Number" Width="150px"></asp:Label>
<asp:TextBox ID="txtTwo" runat="server" Width="150px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="txtTwo" ErrorMessage="Enter second Number"></asp:RequiredFieldValidator>
<br />
<asp:Button ID="btn_insert" runat="server" Text="Insert"
onclick="btn_insert_Click" />
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
<asp:Label ID="lblmsg" runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>
using System;
using
System.Collections;
using
System.Configuration;
using
System.Data;
using
System.Linq;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.HtmlControls;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Xml.Linq;
using
System.Data.SqlClient;
namespace Sum
{
public partial class _Default : System.Web.UI.Page
{
string
connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlCommand
com;
SqlDataAdapter
sqlda;
DataSet
ds;
string
str;
protected
void Page_Load(object
sender, EventArgs e)
{
if
(!IsPostBack)
{
bindgrid();
}
}
private
void bindgrid()
{
SqlConnection
con = new SqlConnection(connStr);
con.Open();
str = "select
*,(one + two)as 'Sum' from test";
com = new
SqlCommand(str, con);
sqlda = new
SqlDataAdapter(com);
ds = new
DataSet();
sqlda.Fill(ds, "test");
GridView1.DataMember = "test";
GridView1.DataSource = ds;
GridView1.DataBind();
con.Close();
}
protected
void btn_insert_Click(object
sender, EventArgs e)
{
SqlConnection
con = new SqlConnection(connStr);
com = new
SqlCommand();
com.Connection = con;
com.CommandType = CommandType.Text;
com.CommandText = "insert into test values(@one,@two)";
com.Parameters.Clear();
com.Parameters.AddWithValue("@one", txtOne.Text);
com.Parameters.AddWithValue("@two", txtTwo.Text);
if
(con.State == ConnectionState.Closed)
con.Open();
com.ExecuteNonQuery();
con.Close();
lblmsg.Text = "Data entered successfully!!!";
clear();
bindgrid();
}
private
void clear()
{
txtOne.Text = "";
txtTwo.Text = "";
}
}
}