2012-10-03 33 views
0

我有一個asp.net頁面,其中有一張從工具箱設計器拖出的圖表。我知道如果我點擊這個圖表,會出現一個「圖表任務」菜單,以便我可以定義sql數據源,圖表類型和x值。我遇到的問題是我的sql數據源需要用戶輸入。我希望用戶根據輸入日期輸入日期和搜索記錄。因此,我無法在圖表任務菜單上定義一個sql查詢,因爲它會告訴我,我的查詢無效。我的代碼看起來像這樣到目前爲止:如何使用依賴於用戶輸入的sql查詢填充圖表

con1.Open(); 
    SqlCommand cmd2 = new SqlCommand (string.Format ("select CustomerName, AccountNumber, DateReading, Time, ID from dbo.NewLogTable join dbo.CustomerTable on ID = Customer_ID join dbo.VoltageTable on Voltage_Reading = Provided_Voltage where Sensor_ID = 'FA0009' and DateReading= '{0}' " ,TextBox1.Text), con1); 
    SqlDataAdapter da2 = new SqlDataAdapter(cmd2); 
    DataSet ds2 = new DataSet(); 
    da2.Fill(ds2); 
    Chart2.DataSource = da2; 
    Chart2.Visible = true; 
    Chart2.DataBind(); 

    con1.Close(); 

每當我輸入日期並單擊按鈕,什麼都不會發生。我知道sqlCommand是正確的。但是,我找不到爲我的圖表設置x和y值的方法。我試過Chart2.Xvalue和.parameters,並找不到一種方法來設置這些。我認爲那是給我的麻煩。任何人都可以解釋一下這個問題嗎?謝謝。

回答

1

用途:

您必須分配數據集DS2作爲數據源爲圖表,而不是使用SqlDataAdapter的DA2。

Chart2.DataSource = ds2; 

,而不是

Chart2.DataSource = da2; 
+1

感謝您的答覆。我看到你所做的改變,這是有道理的。但是,我仍然沒有辦法設置我的x和y參數。另外,即使我已經設置可見爲真,我仍然沒有看到我的圖。 – Rick

+0

@Rick一旦你分配了數據源,你需要Databind()來顯示數據。希望這可以幫助。 – Fuzzybear

相關問題