Hi adnanali,
If you are using GridView refer below article.
If you are using DataGrid please refer below sample.
HTML
<asp:DataGrid ID="dgCustomers" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundColumn DataField="RowNumber" HeaderText="Sr. Number"></asp:BoundColumn>
<asp:BoundColumn DataField="Name" HeaderText="Name"></asp:BoundColumn>
<asp:BoundColumn DataField="Country" HeaderText="Country"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
Namespaces
C#
using System;
using System.Data.SqlClient;
using System.Data;
VB.Net
Imports System
Imports System.Data.SqlClient
Imports System.Data
Code
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.BindGrid();
}
}
private void BindGrid()
{
string ConnectionString = @"Server=.\SQL2005;DataBase=Test;UID=user;PWD=password";
using (SqlConnection con = new SqlConnection(ConnectionString))
{
using (SqlCommand cmd = new SqlCommand("SELECT ROW_NUMBER() OVER(ORDER BY CustomerId) AS RowNumber,* FROM Customers", con))
{
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
this.dgCustomers.DataSource = dt;
this.dgCustomers.DataBind();
}
}
}
VB.Net
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not Me.IsPostBack Then
Me.BindGrid()
End If
End Sub
Private Sub BindGrid()
Dim ConnectionString As String = "Server=.\SQL2005;DataBase=Test;UID=user;PWD=password"
Using con As SqlConnection = New SqlConnection(ConnectionString)
Using cmd As SqlCommand = New SqlCommand("SELECT ROW_NUMBER() OVER(ORDER BY CustomerId) AS RowNumber,* FROM Customers", con)
Dim da As SqlDataAdapter = New SqlDataAdapter(cmd)
Dim dt As DataTable = New DataTable()
da.Fill(dt)
Me.dgCustomers.DataSource = dt
Me.dgCustomers.DataBind()
End Using
End Using
End Sub
Screenshot
![](https://i.imgur.com/QANAwy0.jpg)