我在这里看到过这个问题,但它似乎与我的情况不同。我可能错了,但我们会看到的。
现在我正在用 MVC3 (C#) 创建一个博客类型的网站,我目前可以创建、编辑、删除等博客,一切正常。我正在使用 Code First EF,所以我不知道这有多重要。
我有一个 BlogPost 模型如下:
public class BlogPost
{
public int id { get; set; }
public string Title { get; set; }
public DateTime DateCreated { get; set; }
public ICollection<Topic> Topics { get; set; }
public string Content { get; set; }
public ICollection<Comment> Comments { get; set; }
}
和一个主题模型(每篇博文可以有多个主题)
public class Topic
{
public int id { get; set; }
public string Name { get; set; }
public int PostId { get; set; }
// navigation back to parent
public BlogPost Post { get; set; }
}
然后是我的 DbContext 继承模型,其中包含我的所有模型:
public class MyModel : DbContext
{
public DbSet<BlogPost> Posts { get; set; }
public DbSet<Comment> Comments { get; set; }
public DbSet<Topic> Topics { get; set; }
public DbSet<AdminComment> AdminComments { get; set; }
public DbSet<Bug> Bugs { get; set; }
}
目前 BlogController 使用默认的脚手架来创建/编辑/删除/细节
private MyModel db = new MyModel();
//
// GET: /Admin/Blog/
public ViewResult Index()
{
return View(db.Posts.ToList());
}
我可以做些什么来传递另一个模型,所以在这个列表上说,它将显示与帖子相关的所有主题,并添加一个创建以将主题添加到您当前正在创建的帖子中?