Я новичок в ASP.NET MVC 3 и ищу в Интернете, но я ничего не нашел о том, как использовать объединение в ASP.NET MVC 3 .Например, в своем проекте социальной сети я хочу получить все посты с комментариями.Я использую:
var myobj = DB.Comments.Include("Post").ToList();
Но это показывает только те сообщения, которые имеют комментарии.Я хочу показать все сообщения, а затем их соответствующие комментарии.
Я задал похожий вопрос, и люди ответили, что используют
var myobj = DB.Post.Include("Comments").ToList();
Но это не так.Мои знания баз данных говорят о том, что у поста есть комментарии, а не у комментариев есть посты.Просто COMMENT имеет внешний ключ от POST.
Как мне решить это простым запросом к базе данных или методом?
var myobj = from u in DB.Posts
join b in DB.Comments
on u.UserID equals b.UserID
into obj
from ua in obj.DefaultIfEmpty()
select new { userComments = (ua == null) ? "" : ua.UserComments, UserPosts = u.UserPosts };
return view(myobj.ToList());
Если я использую вышеупомянутое, то я не могу передать егопредставление, потому что это запрос SQL, а представление and
требует модель в любом случае.Каково полное решение в обоих случаях, то есть от использования SQL-запроса или есть какой-либо другой метод?