私が理解していることから、私はこれを正しく行っています。テーブルCategoryのidフィールドにCategoryIdの関係を持つブログテーブルがあります。しかし、.include()コマンドを使用すると、コントローラー内で解決できません。これがコードです。
Blog.cs
public class Blog
{
[Key]
public int Id { get; set; }
[Required, StringLength(50)]
public string Title { get; set; }
[DataType(DataType.Date)]
public DateTime PostedDate { get; set; }
[Required]
public string Meat { get; set; }
[Required, StringLength(25)]
public int CategoryId { get; set; }
public string FriendlyUrl { get; set; }
public virtual ICollection<Category> Category { get; set; }
}
public partial class BlogDbContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
}
Category.cs
public class Category
{
[Key]
public int Id { get; set; }
[Required, StringLength(50)]
public string Title { get; set; }
public string FriendlyUrl { get; set; }
}
public partial class BlogDbContext : DbContext
{
public DbSet<Category> Categories { get; set; }
}
BlogController
public class BlogController : Controller
{
private readonly BlogDbContext _db = new BlogDbContext();
public ActionResult Index()
{
var blogs = _db.Blogs.Include(c => c.Category); //This is where the error occurs
return View(blogs.ToList());
}
}