2013-09-27 42 views
0

我有一個ListView,使刪除,我也用的SqlDataSource作爲ListView控件的數據源,我有這2個表:如何讓DeleteParameter的值進入後面的代碼?

News table that contains news_id, title, etc.. and 
Feedback table that contains feedback_id, comment, news_id(FK), etc... 

我可以刪除沒有註釋的紀錄,但我得到這個錯誤時,我試圖刪除一個有評論的新聞,評論來自表'新聞'中有一個外鍵'news_id'的表'Feedback',我知道解決這個問題是我需要從反饋表首先。我怎樣才能實現它?我想在ListView中使用OnItemDeleting事件和執行查詢:

DELETE FROM Feedback WHERE news_id = @news_id 

,然後可以繼續在是在SqlDataSource執行的DeleteCommand:

DeleteCommand="DELETE FROM [News] WHERE [news_id] = @news_id" 

但後來我得到這個錯誤:

Must declare the scalar variable "@news_id". 

這是我DeleteParameter:

<DeleteParameters> 
<asp:Parameter Name="news_id" Type="Int32" /> 
</DeleteParameters> 

如何從DeleteParameter中獲取news_id? 任何答案表示讚賞,謝謝。

回答

0

我編輯我的外鍵關係我的表的,改變INSERT和UPDATE規範>從無動作刪除規則來級聯解決我的問題。 OnItemDeleting不再需要,我會將其作爲答案發布,以便任何人也會遇到此問題。

enter image description here

相關問題