Jeg har udviklet en lille webservice, som giver mulighed for at søge i en MP3-databasen. Næste skridt som jeg nu arbejder på, er at lave et WinAmp-plugin som forbinder til webservicen, så der der bliver integreret en søgemaskine til et lokalnetværk (man skal jo finde på et eller andet for at afprøve mulighederne i den nye teknologi).
Anyway, webservices giver mulighed for lidt forskellige muligheder til søgninger. Jeg har dog slettet de fleste, da det kun er SQL-syntaksen der er anderledes.
Koden følger herunder.
Venligst
/Odegaard
--------Code begin---------
<%@ WebService Language="VB" Class="mp3db" %>
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Web.Services
<WebService(Namespace:="
http://minmaskine/Webservices/")> Public Class mp3db : Inherits WebService
Private ConnStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\søgemaskine\mp3db.mdb"
Private objConn As OleDbConnection
Private strSQL As String
<WebMethod(Description:="Searches the database by artist")> _
Public Function SearchArtist(str As String) As DataSet
if str="" Then
Return Nothing
Else
strSQL = "SELECT * from mp3main where "
strSQL = strSQL & "artist like '%" & str & "%'"
strSQL = strSQL & " ORDER BY artist,album,songname"
return doQuery(strSQL)
End if
End Function
<WebMethod(Description:="Returns statistics from the database")> _
Public Function GetStats() As DataSet
return doQuery("SELECT Sum([length]) As TotalSeconds, Count(*) As NoOfFiles FROM mp3main;")
End Function
Private Function doQuery(strSQL as String) As DataSet
try
objConn = new OleDbConnection(ConnStr)
Dim objDataCmd As OleDbDataAdapter = New OleDbDataAdapter(strSQL, objConn)
Dim objDS as new DataSet
objDataCmd.Fill(objDS)
return objDS
objConn.Close()
catch ex as OleDbException
return nothing
end try
End Function
End Class