Как получить данные от одного ко многим отношениям в ASP.NET MVC?
Я создаю веб-сайт с использованием структуры кода первого объекта.
Это моя реляционная база данных.
Сейчас я работаю над разделом комментариев.
Он находится в DollsController: ActionResult Details(dollId)
.
Я получил данные от CommentsRepository
, используя эту функцию в DollsRepository
:
public IQueryable<Comment> GetCommentsById(int dollId){
SiteDbContext context = new SiteDbContext();
IQueryable<Comment> resultComments = context.Comments.Where(c => c.DollId == dollId);
return resultComments;
}
Подробности ActionResult
выглядит так:
[HttpGet]
public ActionResult Details(int id) {
UsersVM model = new UsersVM();
model.doll = repo.GetById(id);
model.user = repo.GetUserByDollById(id);
model.comment = repo.GetCommentsById(id);
context.SaveChanges();
return View(model);
}
Это *Я использую папку 1023 *:
ViewModels/Details
:
IndexVM
:
public class IndexVM : BaseIndexVM<Doll, FilterVM> {
public int UserId { get; set; }
public User User { get; set; }
}
FilterVM
:
public class FilterVM : BaseFilterVM<Doll> {
[DisplayName("Doll Id:")]
public int DollId { get; set; }
[DisplayName("Name:")]
public string Name { get; set; }
[DisplayName("Price:")]
public double Price { get; set; }
[DisplayName("Likes:")]
public int Likes { get; set; }
public override Expression<Func<Doll, bool>> GenerateFilter() {
return null;
}
}
UsersVM
:
public class UsersVM {
public Doll doll { get; set; }
public List<Comment> comments { get; set; }
public List<User> items { get; set; }
public List<User> userCs { get; set; }
public IQueryable<User> userC { get; set; }
public IQueryable<Comment> comment{ get; set; }
public IQueryable<User> user { get; set; }
}
userCs
и userC
в настоящее время не используются.Я планировал использовать их для выполнения этой задачи, но я просто не могу обернуться вокруг этой проблемы.
Я могу напечатать все комментарии, внешний ключ которых равен текущему идентификатору куклы.
Я хочу напечатать имя пользователя, сделавшего комментарий, перед комментарием.
Как получить данные для всех пользователей, идентификатор которых равен внешнему ключу комментариев, используяDollID