Just nu i M3-nätverket
Jump to content

Sorteringsfunktion


Mr Orange

Recommended Posts

Hej!

 

Jag håller på med att lägga till en sorteringsfunktion på en asp.net sida, men det går inte så bra. Hoppas någon på forumet kan hjälpa mig!

 

Så här ser min kod ut:

 

classfil.vb

 

Public Class db

Inherits Page

 

sql = "SELECT * FROM filmer"

 

Sub Sort_Grid(sender As Object, e As DataGridSortCommandEventArgs)

sql = sql & " ORDER BY " & e.SortExpression

End Sub

 

Function visaFilmer()

 

dim dbconn,dbcomm,myDA,myDS

dbconn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb") & ";Jet OLEDB:Database Password=lösenord;")

dbconn.Open()

dbcomm = New OleDbCommand(sql,dbconn)

myDA = New OleDbDataAdapter()

myDA.SelectCommand = dbcomm

myDS = New DataSet()

myDA.Fill(myDS)

 

Return myDS

 

End Function

 

End Class

 

 

filmer.aspx

 

<%@ Page Language="vb" Src="classfil.vb" Inherits="db" Debug="true" %>

 

<html>

<body>

<a href="start.aspx">Tillbaka</a>

<%

customers.DataSource = visaFilmer

customers.DataBind()

%>

 

<form runat="server" method="post">

<asp:datagrid id="customers" runat="server" BorderWidth="0"

CellPadding="2" Width="100%"

Font-Name="Verdana"

Font-Size="Smaller"

AutoGenerateColumns="False"

HeaderStyle-HorizontalAlign="Center"

HeaderStyle-Font-Bold="True"

HeaderStyle-BackColor="Navy"

HeaderStyle-ForeColor="White"

AlternatingItemStyle-BackColor="#dddddd"

AllowSorting = "true"

OnSortCommand = "Sort_Grid" >

<Columns>

<asp:BoundColumn SortExpression="Kategori" HeaderText="Kategori" DataField="Kategori" />

<asp:BoundColumn SortExpression="Film" HeaderText="Film" DataField="Film" />

<asp:BoundColumn SortExpression="Beskrivning" HeaderText="Beskrivning" DataField="Beskrivning" />

 

</Columns>

 

</asp:datagrid>

 

</form>

 

</html>

</body>

 

 

Link to comment
Share on other sites

Vad är det som blir fel?

 

/Jocke

 

"Shit! What? Rollers. No? Yeah. Shit!" - Blues Brothers

 

 

[inlägget ändrat 2003-04-02 08:29:13 av jockesoft]

Link to comment
Share on other sites

sql = "SELECT * FROM filmer"

Sub Sort_Grid(sender As Object, e As DataGridSortCommandEventArgs)
sql = sql & " ORDER BY " & e.SortExpression
End Sub

Detta kan vara felet. Du sätter sql = sql & "...", därmed när funktionen kallas nästa gång så finns redan en order by i sql strängen. Gör en baseSQL sätt den till "SELECT * FROM filmer", ändra sedan i din Sort_Grid till

sql = baseSQL & "ORDER....."

det kanske fixar till det.

 

/Jocke

 

"Shit! What? Rollers. No? Yeah. Shit!" - Blues Brothers

 

 

Link to comment
Share on other sites

Ändra det här:

Public Class db
Inherits Page

sql = "SELECT * FROM filmer"

Sub Sort_Grid(sender As Object, e As DataGridSortCommandEventArgs)
sql = sql & " ORDER BY " & e.SortExpression
End Sub

 

Till det här:

Public Class db
Inherits Page

baseSQL = "SELECT * FROM filmer"
sql = ""

Sub Sort_Grid(sender As Object, e As DataGridSortCommandEventArgs)
sql = baseSQL & " ORDER BY " & e.SortExpression
End Sub

 

/Jocke

 

"Shit! What? Rollers. No? Yeah. Shit!" - Blues Brothers

 

 

Link to comment
Share on other sites

Kör det i debuggern och kolla dina variabler i din Sort_Grid funktion. Kolla vad din sql sträng blir och vad e.SortExpression är, så är det kanske lättare att hitta felet.

 

/Jocke

 

"Shit! What? Rollers. No? Yeah. Shit!" - Blues Brothers

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...