项目中使用Package Manager Console加载EFCodeFirst1.1;
创建类
public partial class BlogUser {
/// <summary>
/// 默认情况下属性被命名为ID、id或者[ClassName]Id,将映射为数据表中的主键
/// 如果没有类似的命名,并且也未显示指明主键,则生成失败,引发异常
/// </summary>
public int BlogUserId { get; set; }
public string BlogName { get; set; }
/// <summary>
/// 定义博客用户的随笔列表
/// virtual表示该列表为延迟加载
/// </summary>
public virtual ICollection<Post> Posts { get; set; }
}
public partial class Post {
public int PostId { get; set; }
public string PostTitle { get; set; }
public int BlogUserId { get; set; }
/// <summary>
/// 延迟加载博客用户
/// </summary>
public virtual BlogUser BlogUser { get; set; }
}
public class BlogDbContext : DbContext {
public BlogDbContext()
: base("name=EFDemoDBConnectionString") {
}
public IDbSet<BlogUser> BlogUsers { get; set; }
public IDbSet<Post> Posts { get; set; }
}
使用Database.SetInitializer<BlogDbContext >(new DropCreateDatabaseIfModelChanges<BlogDbContext >());语句无法创建表
错误提示:
Model compatibility cannot be checked because the database does not contain model metadata. Ensure that IncludeMetadataConvention has been added to the DbModelBuilder conventions.
不知哪位专家能给解答下