如何在linq使用左连接
我先說一下我的項目吧,上次就已經提過了,我做的是酒店的客房管理系統,首先要實現的是房態圖,這個是根據房間的數量來新增的,而且可以在房態圖上進行各種操作。
上次我試過在循環出房態圖的那個for循環里面寫了個post請求來查詢每間房間是否有客人信息,然后根據客人信息顯示圖標。結果嘛,當然是實現了,但是我卻不太滿意,因為在for循環里面寫了post請求,每循環一次就要請求一次,所以刷新頁面后房態圖出來的比較慢,雖然是慢了一點,可是我不想,所以我想到了用左連接。
模型表:(明細表連接的就是客人的入住信息)
左連接鴨,簡單來說就是查詢不到的東西就返回null,如果沒有寫左連接的話,linq只會查詢顯示它們那些共有的,然后返回,這樣的話就無法實現同時查詢是否有客人信息了。而用了左連接之后,如果有數據就返回數據,沒有就返回null,這樣我就可以根據客人的入住信息從而顯示不同的圖標了。所以我就決定用左連接來把我的那兩個不同的post請求合并起來。
我們先寫一個linq來查詢那些可以為null的數據
上面查詢出來的數據是要顯示不同的圖標的,然后我們要把上面的那個linq當成一個模型表再用另一個linq連表查詢出我們要的數據。
第二個linq是原本用來查詢房間信息然后用for循環加載出不同的房間的,
只不過現在連多了一個linq而已,沒什么不一樣的。
第二個linq:
注意我圈住的那些地方!
第一個圈圈是你上一個linq的名稱。
第二個圈圈是你隨意起的名稱。
然后我們用lamb表達式查詢出我們要的字段,后面的單詞意思是返回序列的第一個元素,如果沒有任何元素則返回默認值(單詞不要忘寫鴨)。
最后返回數據到頁面,然后就沒了。
總結
以上是生活随笔為你收集整理的如何在linq使用左连接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 典韦字什么 典韦简介
- 下一篇: SuperMap GIS查询