如何在asp.net会话中对存储的数据进行排序 [英] How to sort the stored data in asp.net session
本文介绍了如何在asp.net会话中对存储的数据进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨
我在会话中排序数据时遇到问题。
下面的代码很好。
但是无法按网格视图顺序排序PubDate
我不知道怎么做。
请给我建议
Maideen
这是我的代码
Hi
I have an issue in sorting data in session.
Below code is wroking fine.
But could not be sorted in grid view order by "PubDate"
I don't know how to do this.
Pls advice me
Maideen
Here is my code
Sub CreatGridDetails()
Dim dt As New DataTable
If dt.TableName.Contains("tbl_GridDetails") = True Then
Exit Sub
Else
dt = New DataTable("tbl_GridDetails")
dt.Columns.Add("pubdate", GetType(String))
dt.Columns.Add("mainsection", GetType(String))
dt.Columns.Add("subsection", GetType(String))
dt.Columns.Add("position", GetType(String))
dt.Columns.Add("color", GetType(String))
dt.Columns.Add("sizeh", GetType(Decimal))
dt.Columns.Add("sizew", GetType(Decimal))
dt.Columns.Add("volume", GetType(Decimal))
dt.Columns.Add("rate", GetType(Decimal))
dt.Columns.Add("clrchg", GetType(Decimal))
dt.Columns.Add("ldchargeP", GetType(Decimal))
dt.Columns.Add("ldchargeA", GetType(Decimal))
dt.Columns.Add("gross", GetType(Decimal))
dt.Columns.Add("SizeCode", GetType(String))
dt.Columns.Add("Remarks", GetType(String))
dt.Columns.Add("Materials", GetType(String))
dt.Columns.Add("pagenumber", GetType(Decimal))
End If
dt.Rows.Clear()
Session("Grid_Details") = dt
gv.DataSource = dt
gv.DataBind()
End Sub
Sub AddGrid()
Try
Dim dt As DataTable = Session("Grid_Details")
Dim dr As DataRow = dt.NewRow
dr("pubdate") = Me.txtPubDate.Text
dr("mainsection") = Me.cboMainSection.SelectedValue
dr("subsection") = Me.cboSubSection.SelectedValue
dr("position") = Me.cboPosition.SelectedValue
dr("color") = Me.cboColor.SelectedValue
dr("sizeh") = Me.txtSizeH.Text
dr("sizeW") = Me.txtSizeW.Text
dr("volume") = Me.txtVolume.Text
dr("rate") = Me.txtRate.Text
dr("clrchg") = Me.txtColorCharge.Text
dr("ldchargeP") = Me.txtLDChgP.Text
dr("ldchargeA") = Me.txtLDChgR.Text
dr("gross") = Me.txtGrossTotal.Text
dr("SizeCode") = Me.cboSizeCode.SelectedValue
dr("Remarks") = Me.txtRemarksDetails.Text
dr("Materials") = Me.txtMaterials_D.Text
dr("pagenumber") = Me.txtPageNo.Text
dt.Rows.Add(dr)
Session("Grid_Details") = dt
Exit Sub
Catch ex As Exception
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "alert", "alert(ex.Message);", True)
Finally
End Try
End Sub
Sub load_Grid_Details()
If Session("Grid_Details") Is Nothing Then
gv.DataSource = ""
gv.DataBind()
Else
gv.DataSource = Session("Grid_Details")
gv.DataBind()
End If
End Sub
推荐答案
尝试如下
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));
将值设置为在本专栏中,您需要提供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)
这篇关于如何在asp.net会话中对存储的数据进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文