Tengo varias relaciones principales> hijo> nieto en mi esquema db. Normalmente, tengo el padre y quiero información sobre los nietos. Por ejemplo, tengo un usuario que tiene una colección de redes sociales que tienen colecciones de amigos. Me encuentro escribiendo este código una y otra vez.Cómo recuperar objetos de nieto de un padre utilizando linq
var friends = new List<Friend>();
foreach (var socialNetwork in user.UserSocialNetworks)
{
foreach (var friend in socialNetwork.Friends)
{
friends.Add(friend);
}
}
¿Hay una forma más elegante de hacer esto con linq?
Lo que realmente me gustaría poder hacer es "user.Friends" pero tendré que poner una clave foránea al usuario en la mesa de amigos y eso no huele bien. Esto es lo que se vería así:
User {Id,..}
SocialNetwork {Id, UserId, ...}
Friend {Id, SocialNetworkId, UserId, ... }
¿Pensamientos?
¡SeleccioneMany!?! ¿Quién hubiera pensado? :) ¡Gracias! – DanielEli