EF Code First教程-02.1 Fluent API约定配置
2024-08-26 16:23:30
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration;
using System.ComponentModel.DataAnnotations.Schema; namespace GTBlog.Model
{
public class EfDbContext:DbContext
{
public EfDbContext()
: base("connStr")
{ } //增加表后在程序包管理控制台中执行下面的命令
//Add-Migration AddBlogUrl //新增一个数据库迁移版本 AddBlogUrl是要新增版本名称,这个名称必须是唯一的,不能重复
//Update-Database //更新数据库 public DbSet<User> Users { get; set; }
public DbSet<Category> Categories { get; set; }
public DbSet<Article> Articles { get; set; }
public DbSet<DBInfo> DBInfos { get; set; }
public DbSet<Menu> Menus { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder
.Configurations
.Add(new UserConfiguration())
.Add(new CategoryConfiguration())
.Add(new ArticleConfiguration())
.Add(new DBInfoConfiguration())
.Add(new MenuConfiguration());
base.OnModelCreating(modelBuilder);
} #region UserConfiguration public class UserConfiguration : EntityTypeConfiguration<User>
{
public UserConfiguration()
{
HasKey(c => c.Id);
Property(c => c.Id)
.IsRequired();
Property(c => c.UserName)
.HasMaxLength();
Property(c => c.Password)
.HasMaxLength();
}
} #endregion #region CategoryConfiguration public class CategoryConfiguration : EntityTypeConfiguration<Category>
{
public CategoryConfiguration()
{
HasKey(c => c.Id);
Property(c => c.Id)
.IsRequired();
Property(c => c.Name)
.IsRequired()
.HasMaxLength();
}
} #endregion #region ArticleConfiguration public class ArticleConfiguration : EntityTypeConfiguration<Article>
{
public ArticleConfiguration()
{
HasKey(c => c.Id);
Property(c => c.Id)
.IsRequired();
Property(c => c.Title)
.HasMaxLength();
Property(c => c.Description)
.HasMaxLength();
}
} #endregion #region DBInfoConfiguration public class DBInfoConfiguration : EntityTypeConfiguration<DBInfo>
{
public DBInfoConfiguration()
{
HasKey(c => c.Id);
Property(c => c.Id)
.IsRequired();
Property(c => c.Explain)
.IsRequired()
.HasMaxLength();
}
} #endregion #region MenuConfiguration public class MenuConfiguration : EntityTypeConfiguration<Menu>
{
public MenuConfiguration()
{
HasKey(c => c.Id);
Property(c => c.Id)
.IsRequired();
Property(c => c.Name)
.HasMaxLength();
Property(c => c.Url)
.HasMaxLength();
}
} #endregion }
}
最新文章
- CentOS安装Apache-2.4.10+安全配置
- jquery ashx交互 返回list 循环json输入信息
- Asprise-OCR的使用
- laravel 中 与前端的一些事4 之合并压缩静态文件
- [原创]cocos2d-x研习录-第二阶 概念类之摄相机类(CCCamera)
- 调皮的MySQL服务 请你不要再躲猫猫
- C#中SaveFileDialog 和OpenFileDialog 的用法
- null和";";的区别
- PhotoShop中画圆角矩形最简单方法(图文并茂)!
- 关于main函数的定义
- HDU-2548 两军交锋
- 关闭WIN10的UAC/自动更新/杀毒软件(兼容WIN7/8/8.1)
- 我的Mac应用
- Android类参考---SQLiteOpenHelper
- 使用jQuery获取元素的宽度或高度的几种情况
- HDU 5977 Garden of Eden
- deepin Gtk-WARNING **: 无法在模块路径中找到主题引擎:“adwaita”
- CHENGDU1-Python编程语言和PEP8规范
- Python 爬虫利器 Selenium 介绍
- node.js中path路径模块的使用