public
partial
class
Contact : Page
{
string
connectionString = WebConfigurationManager.ConnectionStrings[
"ConnectionString"
].ConnectionString;
DataTable employeeTable =
new
DataTable();
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(ViewState[
"EmployeeTable"
] ==
null
)
{
InitializeDataTable();
BindInitialData();
}
else
{
employeeTable = (DataTable)ViewState[
"EmployeeTable"
];
GridView1.DataSource = employeeTable;
GridView1.DataBind();
}
}
protected
void
InitializeDataTable()
{
employeeTable.Columns.Add(
"Name"
,
typeof
(
string
));
employeeTable.Columns.Add(
"Email"
,
typeof
(
string
));
employeeTable.Columns.Add(
"Age"
,
typeof
(
int
));
employeeTable.Columns.Add(
"Country"
,
typeof
(
string
));
}
protected
void
BindInitialData()
{
using
(SqlConnection connection =
new
SqlConnection(connectionString))
{
string
query =
"SELECT Id, Name, Email, Age, Country FROM Employee"
;
using
(SqlCommand command =
new
SqlCommand(query, connection))
{
SqlDataAdapter adapter =
new
SqlDataAdapter(command);
adapter.Fill(employeeTable);
GridView1.DataSource = employeeTable;
GridView1.DataBind();
}
}
}
protected
void
btnAddRow_Click(
object
sender, EventArgs e)
{
DataRow newRow = employeeTable.NewRow();
newRow[
"Name"
] =
"New Employee"
;
newRow[
"Email"
] =
"newemployee@example.com"
;
newRow[
"Age"
] = 20;
newRow[
"Country"
] =
"UK"
;
employeeTable.Rows.Add(newRow);
GridView1.DataSource = employeeTable;
GridView1.DataBind();
ViewState[
"EmployeeTable"
] = employeeTable;
}
}
}