簡體   English   中英

將LINQ更新為SQL,但是我的查詢來自聯接? 無法使用使用聯接的查詢進行更新?

[英]Updating LINQ to SQL but the query i have is from a join? Can't update using query that uses a join?

我有一個返回IQueryable的查詢,我的查詢包含聯接。 最終用戶需要能夠更新某些字段。 請記住,這些字段不是來自1個表,而是2個聯接的結果。

因此,如何使用查詢返回的數據進行更改並更新回數據庫?

我是否需要做另外2個選擇查詢,這些查詢會明顯地返回LINQ2SQL CLASS,因此我可以僅更改該類中的值,然后更新數據庫?

我對解決此問題的最佳方法感到困惑。

當您想要更改某些數據時,需要使用LINQ to SQL為您生成的類。 只有這樣,LINQ to SQL才能知道已更改的內容(更改跟蹤)以及如何更新相應的數據庫記錄。 換句話說,匿名對象或自定義對象的更改不會引起注意。 但是,該聯接與此無關。

如果有某種方式可以通過分組查詢傳遞原始LINQ對象,則可以在那里更新對象,並將更改保存到數據庫中。 否則,不能,您不能將分組結果持久化回數據庫,並且將需要查詢您要提及的對象。

HTH。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM