То есть вы хотите отобразить 2 модели в 1 представлении, верно?
В этом сценарии вы можете применить шаблон MVVM.
Вот пример:
Я определю 3 класса в папке Model
public class Post
{
public string Id {get;set;}
public string Content {get;set;}
public string UserId {get;set;}
}
public class Comment
{
public string Id {get;set;}
public string Content {get;set;}
public string PostId {get;set;}
}
// this will hold data for 2 class above
public class PostVM
{
public Post Post {get;set}
public Comment Comment {get;set}
}
Затем в моем контроллере я сделаю запрос в db, чтобы получить данные для публикации и комментарий, подобный этому
public IActionResult PostDetail(string postId)
{
var post = _postRepository.GetPostById(postId);
var comment = _commentRepository.GetCommentByPostId(postId);
// MVVM model return to the view
var vM = new PostVM
{
Post = post,
Comment = comment
}
}
Наконец, на мой взгляд
@model PostVM
<div> @model.Post.Content </div>
@foreach(var comment in @model.Comment)
{
<div> @comment.Content</div>
}
Пожалуйста, отрегулируйте соответственно с вашим кодом. Если у вас есть какие-либо проблемы, пожалуйста, дайте мне знать.
Приветствия