实体框架不会在数据库中创建表

时间:2015-11-09 09:37:44

标签: c# asp.net entity-framework

我刚刚开始使用一些教程学习ASP.Net MVC和Entity Framework,我遇到了问题。

我为数据库连接创建了类 的 OdeToFoodDb.cs

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;

namespace OdeToFood.Models
{
    public class OdeToFoodDb : DbContext
    {
        public DbSet<Restaurant> Restaurants { get; set; }
        public DbSet<RestaurantReview> Reviews { get; set; }
    }
}

和两个班级 Restaurant.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace OdeToFood.Models
{
    public class Restaurant
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string City { get; set; }
        public string Country { get; set; }
        public ICollection<RestaurantReview> Review { get; set; }
    }
}

RestaurantReview.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace OdeToFood.Models
{
    public class RestaurantReview
    {
        public int Id { get; set; }
        public int Rating { get; set; }
        public string Body { get; set; }
        public int RestaurantId { get; set; }
    }
}

然后我尝试添加连接 enter image description here

enter image description here

我有数据库,但它不包含餐馆评论或餐馆

enter image description here

但我的教程说我会自动获取这些表格。我做错了什么?如何让它创建我需要的表?

1 个答案:

答案 0 :(得分:1)

在程序包管理器控制台中,运行以下命令

Update-Database -ProjectName <YourProject.DataLayer>

检查您的连接字符串是否指向您预期的数据库