2013-08-07 49 views
1

我在幾個SQL數據庫中有一個日誌文件。使用按鈕動態更改gridview的連接字符串?

我想在ASP頁面上綁定一個網格。

我想在頁面上有幾個按鈕將改變什麼表格填充gridview。

這是一個ASP VB網站項目。

任何人都可以幫忙嗎?

謝謝!

+1

你有沒有在你的web.config中定義的「其他」連接字符串? –

+0

不,但我可以...... –

+0

那麼,如果你這樣做,那麼你只需要你的按鈕的點擊處理程序讀取必要的連接字符串,將它傳遞給邏輯(數據訪問層類/方法)獲取數據以填充網格。或者,您可以在按鈕事件處理程序代碼中對連接字符串進行硬編碼,但這不太靈活;它取決於您是否希望在不重新編譯代碼的情況下更改連接字符串。 –

回答

0

只是按鈕通過不同的方法綁定數據。例如,按鈕A調用方法A,它使用連接字符串A來填充gridview。

0

這似乎工作。希望這個代碼可以幫助其他人。感謝所有誰評論...

Web.config文件信息:

<connectionStrings> 
    <add name="Data1" connectionString="Data Source=Server1;Initial Catalog=DatabaseSame;Integrated Security=True" providerName="System.Data.SqlClient"/> 
    <add name="Data2" connectionString="Data Source=Server2;Initial Catalog=DatabaseSame;Integrated Security=True" providerName="System.Data.SqlClient"/> 
    <add name="Data3" connectionString="Data Source=Server3;Initial Catalog=DatabaseSame;Integrated Security=True" providerName="System.Data.SqlClient"/> 
</connectionStrings> 

網絡表單有一個數據網格,多個按鈕來選擇哪個數據庫和或服務器

後面的代碼:

Imports System.Configuration 

Partial Class _Default 
Inherits System.Web.UI.Page 

Protected Sub SetNewConnectionForDataSource(ByVal strConnectionName As String) 
    'Pull data from webconfig based on the connection name 
    Dim strConnectionString As String = ConfigurationManager.ConnectionStrings(strConnectionName).ConnectionString 

    Me.SqlDataSource1.ConnectionString = strConnectionString 

    'Save to viewstate for postback 
    ViewState("CurrentConnection") = strConnectionString 

    'Let user know what connection they are viewing 
    lblEnvironment.Text = strConnectionName 

End Sub 

Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load 

    If IsPostBack Then 
     Me.SqlDataSource1.ConnectionString = ViewState("CurrentConnection") 
    Else 
     'First page load, set database 
     SetNewConnectionForDataSource("Data1") 
    End If 

End Sub 

Protected Sub btnOne_Click(sender As Object, e As System.EventArgs) Handles btnDev.Click 
    SetNewConnectionForDataSource("Data1") 
End Sub 

Protected Sub btnTwo_Click(sender As Object, e As System.EventArgs) Handles btnProd.Click 
    SetNewConnectionForDataSource("Data2") 
End Sub 

Protected Sub btnThree_Click(sender As Object, e As System.EventArgs) Handles btnProd.Click 
    SetNewConnectionForDataSource("Data3") 
End Sub 


End Class