簡體   English   中英

查詢-數據集中的完全外部聯接2個不同的表-LINQ C#

[英]Query - Full outer join 2 different tables in a Dataset - LINQ C#

我想從兩個不同的表進行聯接(它們之間沒有連接):

停車場 (parkingLotID,addressParkingLot,statusParkingLot)

PublicParking (publicParkingID,地址PublicParking,statusParking)。

我想寫一個查詢,根據其狀態(停車場和PublicParking)返回所有可用的停車場。

我讀過我需要做完整的外部聯接(創建一個大表),只有這樣我才能編寫查詢。

我需要在LINQ中編寫查詢。

我真的需要您提供有關此查詢和完整外部聯接的幫助(如果正確的話)

using System;
using System.Linq;
using System.Collections.Generic;

public class Program
{
    public static void Main()
    {

        IList<parkingLot> parkingLot=new List <parkingLot>(){

        new parkingLot {parkingLotID=1, addressParkingLot="bograshov 22",statusParkingLot=true},
        new parkingLot {parkingLotID=2, addressParkingLot="bograshov 10",statusParkingLot=false},
        new parkingLot {parkingLotID=3, addressParkingLot="bograshov 28",statusParkingLot=true},
    };



    IList<publicParking> PublicParking=new List <publicParking>(){

        new publicParking {publicParkingID=101, addressPublicParking= "bograshov 23",statusParking=true},
        new publicParking {publicParkingID=102, addressPublicParking= "bograshov 21",statusParking=true},
        new publicParking {publicParkingID=103, addressPublicParking= "bograshov 18",statusParking=false},
    };


  (from lot in parkingLot
    where lot.statusParkingLot == true
    select lot).Union(from pub in PublicParking
    where pub.statusParking==true
    select pub);


   }
}

public class publicParking 
{
 public int publicParkingID { get; set; }
 public string addressPublicParking { get; set; }
    public bool statusParking { get; set; }

}


public class parkingLot 
{
  public int parkingLotID { get; set; }
  public string addressParkingLot { get; set; }
  public bool statusParkingLot { get; set; }

 }

TNX!

UPDATE

我寫了查詢,但是有一個問題:

新問題

您可以使用Union來聯接兩個表而無需公共字段。 您的方案的LINQ查詢將如下所示。

 (from lot in ParkingLots
 where lot.StatusParkingLot == true
 select lot).Union( from pub in PublicParkings
 where pub.StatusParking==true
 select pub);

希望這有效!

暫無
暫無

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

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