J'essaie de comprendre pourquoi, parfois, mes sous-objets disparaissent.LINQ to Entites: sous-objets disparaissant
À mon avis la liste, j'ai la norme
<% foreach (var item in Model)
et quand j'inspecter les biens et le modèle, je peux voir que item.Map a deux ou trois éléments.
En fait, selon moi, la liste que je peux faire:
<% foreach (var map in item.Map)
<% Html.RenderPartial("MapView", map); %>
et MapView peut accéder et afficher toutes les propriétés. Je compris les sous-objets avec:
list = from item in _entities.DataTable
.Include("LookupTable1")
.Include("Map")
.Include("Map.LookupTable2") select item;
return View("List", list);
Mais si j'essaie de faire:
<%= Html.Encode(item.Map.FirstOrDefault().Field)%>
-je obtenir une exception de pointeur nul et item.Map a 0 éléments.
Quelqu'un peut-il expliquer pourquoi cela se produit?
-t-il des éléments 0 ou est-ce nul? Qu'est-ce qui cause le null-pointeur, alors quel objet est nul? –
Lorsque je définis le point d'arrêt sur le 1er foreach, item.Map a 2 éléments. Le 2ème foreach itère à travers 2 éléments de carte. C'est juste quand j'essaie d'accéder à item.Map.First() que la collection de cartes est soudainement nulle. – chris