1

如果你還沒有遇到這個問題,我必須上傳我的代碼,以便爲你解釋它或爲了能夠調試它,那麼這個問題是不適合你的。 我知道我可以通過使用代碼隱藏來解決這個問題,但我不想這樣做。最終,如果沒有任何工作,我將不得不這樣做。SqlDatasource更新查詢控制參數不選擇新值

我沒有使用任何數據綁定控件(gridview,formview,detailview等)。一切都是一個通用的表單控件:textbox和ListBox。我正在使用它們的Text和SelectedValue屬性爲Updatequery的ControlParameters提供值。一切都應該按預期工作。我玩過texbox控件的ViewState屬性和sqldatasource控件本身,無濟於事。用於更新命令的存儲過程記錄了ASP.Net端提供的值,並且令人驚訝地顯示了當窗體加載時存在的文本框的舊值,而不是我所做的更改。

這是怎麼回事?

謝謝!

回答

2

好像你錯過了asp.net生命週期中的某些東西。

刪除對Load頁上的sqldatasource的任何DataBind調用。

如果您在Load上使用DataBind來填充這些文本並選擇控件,則數據綁定將會覆蓋您輸入的任何值。

不要害羞地顯示你的代碼,它提供了很好的答案。

+0

我認爲就是這樣。謝謝! – Aamir

+0

我檢查了page.IsPostback屬性,以確定是否需要讓更新和其他操作運行其課程。然後,只有我將表單控件綁定到sqldatasource。再次感謝解決方案! – Aamir

+1

不客氣。如果我能看到代碼,我會更確定我的答案。 – nunespascal