Wrox Home  
Search P2P Archive for: Go

  Return to Index  

asp_components thread: plz check my code


Message #1 by inhumanoid@y... on Wed, 13 Feb 2002 22:06:53
I am experimenting a bit with COM+.. Is this basic example of mine 

a "proper" implementation ? Feel free to critisize:



Implements ObjectControl



Private objContext As ObjectContext

Private Const strAppName = "ComTest"



Option Explicit



Private Sub ObjectControl_Activate()

    Set objContext = GetObjectContext()

End Sub

Private Function ObjectControl_CanBePooled() As Boolean

    ObjectControl_CanBePooled = False

End Function

Private Sub ObjectControl_Deactivate()

    Set objContext = Nothing

End Sub



'Get absolutePath of System

Public Function getAbsolutePath() As String

  Dim strPathTranslated, strApplicationPath As String

  Dim objRequest As Request

  

  Set objRequest = objContext("Request")

  

  strPathTranslated = objRequest.ServerVariables("PATH_TRANSLATED")

  strApplicationPath = Left(strPathTranslated, InStrRev

(strPathTranslated, strAppName, -1, 1) + Len(strAppName))

  getAbsolutePath = strApplicationPath

  

  Set objRequest = Nothing

End Function

  

'Create as Database Connection

Public Function ConnectToDB(ByVal ConnectionString As String) As 

ADODB.Connection

  Set ConnectToDB = CreateObject("ADODB.Connection")

  ConnectToDB.Open ConnectionString

End Function

  

'Create a recordset

Function CreateRS(ByVal source As String, ByRef objConn As Variant, ByVal 

cursortype As Integer, ByVal locktype As Integer, ByVal options As 

Integer) As ADODB.Recordset

  Set CreateRS = CreateObject("ADODB.Recordset")

  CreateRS.Open source, objConn, cursortype, locktype, options

End Function

  

Function strBaseString() As String

  Dim strBaseConn As String

  strBaseConn = "PROVIDER=MSDASQL;" & _

                "DRIVER={Microsoft Access Driver (*.mdb)};" & _

                "UID=admin;PWD=opensesame;" & _

                "DBQ=" & getAbsolutePath() & "Data.mdb"

  strBaseString = strBaseConn

End Function



Usage:



<%

Dim objTest, objConn, objRS

Set objTest = Server.CreateObject("COM.Connection")

Response.Write objTest.strBaseString() & "<br>"

Response.Write objTest.getAbsolutePath() & "<br>"

Set objConn = objTest.ConnectToDB(objTest.strBaseString())

Set objRS = objTest.CreateRS("SELECT * FROM Books;",objConn,0 ,1 ,1)

Do While Not objRS.EOF

  Response.Write objRS("Title") & " " & objRS("ISBN") & "<BR>"

  objRS.MoveNext

Loop

objRS.Close

Set objRS = Nothing

objConn.Close

Set objConn = Nothing

Set objTest = Nothing

%>

  Return to Index