【发布时间】:2019-08-12 17:59:04
【问题描述】:
基本上,我最近在我的 asp.net 网站上添加了一个搜索框和按钮。我现在遇到的问题是,即使搜索很干净并且事情能够正常运行,我在运行任何搜索之前和之后都遇到了排序问题。我觉得在 sda(Fill).dt 之后我可能会遗漏一些东西,但我在网上找到的任何东西似乎都没有帮助。在vb中也无济于事。提前致谢。
Imports System
Imports System.Configuration
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.OleDb
Imports System.Collections
Imports System.Collections.Generic
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports Microsoft.VisualBasic
Public Class ShowPOsAdmin
Inherits System.Web.UI.Page
Dim strConn As String = ConfigurationManager.ConnectionStrings("PurchaseOrderConnectionString").ConnectionString
Dim Connection As SqlConnection = New SqlConnection(strConn)
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Me.IsPostBack Then
Me.SearchVen()
End If
End Sub
Private Sub SearchVen()
Dim Constr As String = ConfigurationManager.ConnectionStrings("PurchaseOrderConnectionString").ConnectionString
Using Con As New SqlConnection(Constr)
Using cmd As New SqlCommand
Dim searchword As String = "SELECT PurchaseOrder.PoId, PurchaseOrder.Vendor_Name, PurchaseOrder.POAmount,PurchaseOrder.DateFrom, PurchaseOrder.DateTo, PurchaseOrder.Balance, PurchaseOrder.CodeId, PurchaseOrder.PoNumber, BPNumber, ClassCode.CodeId AS Expr1, ClassCode.CodeDefinition, PurchaseOrder.Notes FROM PurchaseOrder INNER JOIN ClassCode ON PurchaseOrder.CodeId = ClassCode.CodeId"
If Not String.IsNullOrEmpty(TextBox11.Text.Trim()) Then
searchword += " Where PurchaseOrder.PONumber Like @POnumber + '%'"
cmd.Parameters.AddWithValue("PONumber", TextBox11.Text.Trim())
End If
cmd.CommandText = searchword
cmd.Connection = Connection
Using sda As New SqlDataAdapter(cmd)
Dim dt As New DataTable()
sda.Fill(dt)
dt.DefaultView.Sort = "Vendor_Name ASC"
GridView1.DataSourceID = ""
GridView1.DataSource = dt
GridView1.DataBind()
ViewState("dt") = dt
End Using
End Using
End Using
End Sub
Private Sub DetailsView1_ItemDeleted(sender As Object, e As DetailsViewDeletedEventArgs) Handles DetailsView1.ItemDeleted
GridView1.DataBind()
Me.SearchVen()
End Sub
Private Sub DetailsView1_ItemInserted(sender As Object, e As DetailsViewInsertedEventArgs) Handles DetailsView1.ItemInserted
GridView1.DataBind()
Me.SearchVen()
End Sub
Private Sub DetailsView1_ItemUpdated(sender As Object, e As DetailsViewUpdatedEventArgs) Handles DetailsView1.ItemUpdated
GridView1.DataBind()
Me.SearchVen()
End Sub
Private Sub GridView1_PageIndexChanging(sender As Object, e As GridViewPageEventArgs) Handles GridView1.PageIndexChanging
GridView1.PageIndex = e.NewPageIndex
Me.SearchVen()
End Sub
Protected Sub TextBox11_TextChanged(sender As Object, e As EventArgs) Handles TextBox11.TextChanged
Me.SearchVen()
End Sub
Protected Sub DetailsView1_PageIndexChanging(sender As Object, e As DetailsViewPageEventArgs) Handles DetailsView1.PageIndexChanging
End Sub
End Class
【问题讨论】:
-
如果你在你的sql语句中排序怎么办?如果不可能,为什么说它没有排序?
-
列已根据供应商名称按字母顺序排序。我指的是单击标题并按gridview上的不同标题对其进行排序。