c#类生成表
第一步:
创建MyContext类
public class MyContext:DbContext
{
public MyContext():base()
{
}
public DbSet<User> User { get; set; }
public DbSet<Temp> Temp { get; set; }
public DbSet<Student> Student { get; set; }
public DbSet<StudentAddress> StudentAddress { get; set; }
public DbSet<Grade> Grade { get; set; }
public DbSet<Course> Course { get; set; }
}
User,Temp,Student,StudentAddress,Grade,Course是相应的类,里面自定义属性
eg:创建User类,表名为UserInfo 生成表为MyData.UserInfo
[Table("UserInfo", Schema = "MyData")]
public class User
{
[Key]//默认把Id或者classNameId作为主键。通过[key]可以指定主键,如果是数字类型,默认自增
public int Id { get; set; }
public string Account { get; set; }
public string PassWrod { get; set; }
public DateTime? LastLoginTime { get; set; }
public DateTime? InsertTime { get; set; }
public bool enable { get; set; }
}
第二步:调用方法
using (MyContext context = new MyContext())
{
UserInfo user = new UserInfo();
context.UserInfo.Add(user);
TempInfo temp = new TempInfo();
context.TempInfo.Add(temp);
StudentInfo student = new StudentInfo();
context.StudentInfo.Add(student);
StudentAddressInfo stuAddress = new StudentAddressInfo();
context.StudentAddressInfo.Add(stuAddress);
GradeInfo grade = new GradeInfo();
context.GradeInfo.Add(grade);
CourseInfo course = new CourseInfo();
context.CourseInfo.Add(course);
context.SaveChanges();
}
表生成完成
生成表另外一种方法:用命令方式执行
打开程序包管理器控制台,执行以下命令生成表
1.Enable-Migrations -EnableAutomaticMigrations //开启迁移功能
2.Add-Migration 名称 //修改模型后,生成新的迁移文件
3.Update-Database -Verbose //将修改提交到数据库
每次在更新前需要把数据库中的表最好先删除一遍
c#类生成表的更多相关文章
- EF:根据实体类生成表结构SQL
根据实体类生成表结构SQL: PM> Enable-Migrations -ProjectName Domain -StartUpProjectName Handler -Force PM> ...
- Hibernate笔记②--hibernate类生成表、id生成策略、级联设置、继承映射
一.多表的一个关联关系 老师和学生是一对多的关系 student:tid属性 外键约束 对应teacher表中的id属性 teacher:id 在myeclipse的db窗口中选中两个表来生成类. ...
- 使用hibernate利用实体类生成表和利用表生成实体类
1,配置数据库,这里以oracle数据库为例.点击右侧Database图标:
- Django ModelForm类生成表单
1. 定义ModelForm类 #froms.py from django import forms from app01.modles import User class UserModelForm ...
- 笔记:EF出现列名 'Discriminator' 无效、类没有加入数据库上下文也被数据迁移生成表
笔记: EF出现列名 'Discriminator' 无效: 类没有加入数据库上下文也被数据迁移生成表: 出现该问题一般是使用了某个基类继承了实体类: 原因是code first的POCO实体对象的继 ...
- 通过实体类生成建表SQL语句实现方法
import java.io.File; import java.io.FileOutputStream; import java.lang.reflect.Field; import java.ut ...
- yii2自动生成表单
视图中: 1.要use的两个文件类 use yii\helpers\Html; use yii\widgets\ActiveForm; 2.生成表单,以添加商品为例说明.注意红线区域:上传文件需要 ...
- Hibernate学习笔记(三)Hibernate生成表单ID主键生成策略
一. Xml方式 <id>标签必须配置在<class>标签内第一个位置.由一个字段构成主键,如果是复杂主键<composite-id>标签 被映射的类必须定义对应数 ...
- Hibernate之SchemaExport+配置文件生成表结构
首先要生成表,得先有实体类,以Person.java为例: /** * * @author Administrator * @hibernate.class table="T_Person& ...
随机推荐
- 一百二十四:CMS系统之首页导航条和代码抽离
模板抽离 由于前后台的模板有些需要的元素如,js,css是相同的,这里抽离出来做base模板 {% from "common/_macros.html" import static ...
- Delphi 10.2.3 精简版自动激活Embarcadero Delphi 10.2.3 v25.0.29899.2631 Lite v14.4
下载:https://maxwoods.ctfile.com/u/758954/28516301 Embarcadero.Delphi.10.2.RTM.v25.0.26309.314.Lite.v1 ...
- Linux - curl和Wget
curl - transfer a URL curl SYNOPSIS curl [options] [URL...] DESCRIPTION curl is a tool to transfer d ...
- 使用robotframework做接口测试5——一个用例中调多个接口
凡是涉及一点点有接口关联的,都可能下一个接口需要上一个接口的某个返回值作为入参,最直接的例子,就是登录依赖.用接口做业务性的测试,也绝对离不开接口依赖的,业务都是一系列接口串联的结果,有时候一个接口操 ...
- 大于2T的硬盘怎么分区
使用parted工具: #yum install parted #parted /dev/sdb //选择要分的硬盘 GNUParted 2.3Using /dev/sdbWelcome to ...
- webdriver的八种定位
转自https://zhuanlan.zhihu.com/p/54588889 在UI层面的自动化测试开发中,元素的定位与操作是基础,也是经常遇到的困难所在.webdriver提供了8种定位: 1. ...
- 【图像算法OpenCV】几何不变矩--Hu矩
原文地址 http://blog.csdn.NET/daijucug/article/details/7535370 [图像算法OpenCV]几何不变矩--Hu矩 一 原理 几何矩是由Hu(Visu ...
- 关于socket buffer size的调优
为了达到最大网络吞吐,socket send buffer size(SO_SNDBUF)不应该小于带宽和延迟的乘积.之前我遇到2个性能问题,都和SO_SNDBUF设置得太小有关.但是,写程序的时候可 ...
- Jquery的深浅拷贝涉及到的知识点
1.安全的类型检测 Object.prototype.toString.call(obj) => "[object NativeConstructorName]" /** * ...
- C#规范整理·资源管理和序列化
资源管理(尤其是内存回收)曾经是程序员的噩梦,不过在.NET平台上这个噩梦似乎已经不复存在.CLR在后台为垃圾回收做了很多事情,使得我们现在谈起在.NET上进行开发时,都会说还是new一个对象吧!回收 ...