За исключением части foreach, которая на самом деле не говорит о том, что вы пытаетесь сделать, поскольку вы находитесь в цикле, перезаписывая ViewData ["BusinessName"], вы в значительной степени на ходу с происходящим.
Если это, скажем, пользователь отображается, и вы хотите также отобразить некоторые BusinessNames, они должны быть доступны в представлении. Скучной вещью с Entity Framework и причиной, по которой я решил временно использовать другие решения, является необходимость загрузки ссылок.
лучшее решение в приведенном вами примере может быть:
using (MyDatabaseEntities context = new MyDatabaseEntities())
{
return (from u in user.Include("Business")
where u.UserId == userId
select u).FirstOrDefault();
}
К сожалению, вы не можете предварительно загружать ссылки глубже, чем это, простым способом, в этом случае вам нужно пройти через весь путь и загрузить.