try like below
Dim dt As DataTable = Session("Grid_Details")
dt.DefaultView.Sort = "PubDate"
gv.DataSource =dt.DefaultView.ToTable()
gv.DataBind()
if you need to sort by Date you need to set column type as Date or DateTime
for example
dt.Columns.Add("pubdate", typeof(DateTime));
when you set values to this column, you need to give DateTime input
dr("pubdate") = DateTime.Now
if you have date in string input then, convert using
dr("pubdate") = DateTime.ParseExact(Me.txtPubDate.Text, "dd-MM-yyyy", Nothing)