Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 23858|Resposta: 0

[Fonte] Sobre a solução alternativa para o campo Linq ser nulo e não mostrar dados

[Copiar link]
Publicado em 03/09/2015 23:44:57 | | | |

Primeiro, vamos olhar para o banco de dados, campos da cidade e do condado, alguns dos quais têm valores nulos, ou seja, valores nulos.

Os dados que consultamos são os mostrados na figura acima: enquanto houver dados nulos na cidade e no condado, toda a linha de dados não é exibida.


Solução:


Código no início:


  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();
Copiar código


Código modificado:

  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();
Copiar código


Os dados são exibidos normalmente após a modificação! Como mostrado na figura abaixo.







Anterior:A proporção 1:1 é completamente imitada pela transferência do código-fonte do projeto WeChat APP
Próximo:c# analisar as cadeias json em coleções de listas
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com