2009-10-22 34 views
0

我有一個使用RIA服務和LINQ2SQL的Silverlight應用程序,並在我的Silverlight應用程序中有對象。使用RIA在Silverlight應用程序中使用LINQ2SQL datacontext提交更改的最佳做法是什麼?

我在Silverlight應用程序中查詢表中的所有記錄(通過LINQ查詢,使用datacontext),併爲每個對象(記錄)創建一個用戶控件,並將該對象放入控件中,因爲我稍後需要該信息。然後,用戶對該對象(存儲在控件中)進行更改,然後將其保存回數據庫。

我的問題是,當我去保存對象時,我沒有datacontext來執行SubmitChanges。我無法將其附加到新的上下文,因爲它表示它已經連接。

這種情況的最佳做法是什麼?

回答

0

創建一個新的DataContext,用它來檢索有問題的記錄,對記錄進行更改並執行SubmitChanges()。

+0

所以沒有辦法使用我存儲在控件中的記錄?我需要再次獲取它,將存儲的記錄的內容複製到它並SubmitChanges()?似乎有點多餘,因爲我已經有一個記錄。我的記錄非常簡單,所以在這種情況下很容易,但如果我有一個複雜的記錄(對象),它很快就會變得非常難看。 – Handleman 2009-10-22 02:56:50

+0

如果您有一種數據綁定記錄的方式,您可能不必複製所有值。看看這裏:http://www.aspfree.com/c/a/Windows-Scripting/Introducing-Two-Way-Data-Binding-using-Silverlight-20-WCF-and-LINQ-to-SQL/ – 2009-10-22 03:33:41

相關問題