Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 23858|Răspunde: 0

[Sursă] Referitor la soluția ca câmpul Linq să fie nul și să nu afișeze date

[Copiază linkul]
Postat pe 03.09.2015 23:44:57 | | | |

Mai întâi, să ne uităm la baza de date, câmpurile orașului, județului, unele dintre ele având valori nulle, adică valori nule.

Datele pe care le-am interogat sunt prezentate în figura de mai sus: atâta timp cât există date nule în oraș și județ, întreaga linie de date nu este afișată.


Soluție:


Cod la început:


  1. rc.children = (from rp in db.RegionPlace
  2.                                    join a in db.PlaceInfo on rp.Province equals a.PlaceID
  3.                                    join b in db.PlaceInfo on rp.City equals b.PlaceID
  4.                                    join c in db.PlaceInfo on rp.County equals c.PlaceID
  5.                                    where rp.RegionID == r.RegionID
  6.                                    select new RegionClass { RegionName = "", Province = a.PlaceName, City = b.PlaceName, County = c.PlaceName }).ToList();
Cod de copiere


Cod modificat:

  1. rc.children = (from rp in db.RegionPlace
  2.                                    join a in db.PlaceInfo on rp.Province equals a.PlaceID
  3.                                    join b in db.PlaceInfo on rp.City equals b.PlaceID
  4.                                    into btemp
  5.                                    from bt in btemp.DefaultIfEmpty()
  6.                                    join c in db.PlaceInfo on rp.County equals c.PlaceID
  7.                                    into ctemp
  8.                                    from ct in ctemp.DefaultIfEmpty()
  9.                                    where rp.RegionID == r.RegionID
  10.                                    select new RegionClass { RegionName = "", Province = a.PlaceName, City = bt.PlaceName == null ? "" : bt.PlaceName, County = ct.PlaceName == null ? "" : ct.PlaceName }).ToList();
Cod de copiere


Datele sunt afișate normal după modificare! Așa cum se vede în figura de mai jos.







Precedent:Raportul 1:1 este complet imitat de transferul codului sursă al proiectului WeChat APP
Următor:c# analizează șirurile json în colecții List
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com