zoukankan      html  css  js  c++  java
  • EF Code First教程-02.1 Fluent API约定配置

    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(50);
                    Property(c => c.Password)
                        .HasMaxLength(50);
                }
            }
    
            #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(50);
                }
            }
    
            #endregion
    
            #region ArticleConfiguration
    
            public class ArticleConfiguration : EntityTypeConfiguration<Article>
            {
                public ArticleConfiguration()
                {
                    HasKey(c => c.Id);
                    Property(c => c.Id)
                        .IsRequired();
                    Property(c => c.Title)
                        .HasMaxLength(50);
                    Property(c => c.Description)
                        .HasMaxLength(200);
                }
            }
    
            #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(200);
                }
            }
    
            #endregion
    
            #region MenuConfiguration
    
            public class MenuConfiguration : EntityTypeConfiguration<Menu>
            {
                public MenuConfiguration()
                {
                    HasKey(c => c.Id);
                    Property(c => c.Id)
                        .IsRequired();
                    Property(c => c.Name)
                        .HasMaxLength(50);
                    Property(c => c.Url)
                        .HasMaxLength(200);   
                }
            }
    
            #endregion
    
        }
    }
  • 相关阅读:
    Bootstrap中,模态框嵌套模态框时,关闭第二个模态框时,导致第一个模态框的滚动条消失
    heidisql 远程登录本地虚拟机中的 MariaDB
    ssh-keygen -t rsa -C "content" 解释
    IIS 环境 CodeIgniter 隐藏 URL 中的 index.php
    Windows 环境下 PHP 安装 xdebug 及配置
    win10 更新后主机背部音频输出无声音
    MySql.Data.MySqlClient.MySqlException: Packets larger than max_allowed_packet are not allowed
    关于 IIS 中 iconfont.woff 报 404(Not Found) 的原因即解决方法
    IIS Web API 长时间不连接后第一次访问非常缓慢
    VS Code 中 HTML 文档注释 js 语句异常
  • 原文地址:https://www.cnblogs.com/james641/p/5147202.html
Copyright © 2011-2022 走看看