2012-12-13 24 views
10

Tôi có một tệp ASP. Trên thực tế tôi kết nối với DataBase với một connectionString trong tập tin của tôi.Đọc ConnectionString từ Web.Config trong ASP.Classic

sConnString = "Driver={SQL Server}; Server=localhost; Database=DB" 

Có cách nào để đọc ConnectionString từ Web.Config không?

EDIT:

Got nó để làm việc với:

' Imports a connection string from an xml file (usually web.config) 
Function ImportConnectionString(webConfig, attrName, reformatDSN) 
    Dim oXML, oNode, oChild, oAttr, dsn 
    Set oXML=Server.CreateObject("Microsoft.XMLDOM") 
    oXML.Async = "false" 
    oXML.Load(Server.MapPath(webConfig)) 
    Set oNode = oXML.GetElementsByTagName("connectionStrings").Item(0) 
    Set oChild = oNode.GetElementsByTagName("add") 
    ' Get the first match 
    For Each oAttr in oChild 
     If oAttr.getAttribute("name") = attrName then 
      dsn = oAttr.getAttribute("connectionString") 
      If reformatDSN Then 
       ' Optionally reformat the connection string (adjust as needed) 
       dsn = Replace(dsn, "User ID=", "UID=") 
       dsn = Replace(dsn, "Password=", "PWD=") 
       dsn = Replace(dsn, "Data Source=", "Server=") 
       dsn = Replace(dsn, "Initial Catalog=", "Database=") 
       dsn = Replace(dsn, "Persist Security Info=True;", "") 
       dsn = "Provider=MSDASQL;Driver={SQL Server};" & dsn 
      End If 
      ImportConnectionString = dsn 
      Exit Function 
     End If 
    Next 
End Function 

Cách sử dụng:

dsn = ImportConnectionString("..\web.config", "ConnectionStringName", false) 
sql = "SELECT * FROM MyTable" 
Set oConn = Server.CreateObject("ADODB.Connection") 
Set oRS = Server.CreateObject("ADODB.RecordSet") 
oConn.Open dsn 
oRS.Open sql, oConn 

If NOT oRS.EOF Then 
    oRS.MoveFirst 
    Do 
     Response.Write("&nbsp; &nbsp; &nbsp;" & oRS("Column1") & "<br/>") 
     oRS.MoveNext 
    Loop Until oRS.EOF 
End If 

Thanks for the help

Trả lời

5

Kể từ file Web.Config là XML, chỉ tải nó vào một XML DOM và truy cập các phần tử của nó theo cách đó.

+0

Cảm ơn liên kết đã giúp tôi rất nhiều – Paks

+0

Tôi cũng tìm thấy [trang này] (http://www.c-sharpcorner.com/UploadFile/sd_patel/WebConfigInASPNet11242005061608AM/WebConfigInASPNet.aspx) cho biết cách trích xuất chuỗi kết nối từ web.config – mfeineis

+0

@vanhelgen Trang bạn đã liên kết đang thực hiện chính xác những gì webaware được mô tả trong câu trả lời của mình. – crush