9.翻译系列:EF 6以及EF Core中的数据注解特性(EF 6 Code-First系列)
2024-10-19 09:00:43
原文地址:http://www.entityframeworktutorial.net/code-first/dataannotation-in-code-first.aspx
EF 6 Code-First系列文章目录:
- 1 翻译系列:什么是Code First(EF 6 Code First 系列)
- 2.翻译系列:为EF Code-First设置开发环境(EF 6 Code-First系列)
- 3.翻译系列:EF Code-First 示例(EF 6 Code-First系列)
- 4.翻译系列:EF 6 Code-First默认约定(EF 6 Code-First系列)
- 5.翻译系列:EF 6中数据库的初始化(EF 6 Code-First 系列)
- 6.翻译系列:EF 6 Code-First中数据库初始化策略(EF 6 Code-First系列
- 7.翻译系列:EF 6中的继承策略(EF 6 Code-First 系列)
- 8.翻译系列: EF 6中配置领域类(EF 6 Code-First 系列)
- 9.翻译系列:EF 6以及EF Core中的数据注解特性(EF 6 Code-First系列)
- 9.1 翻译系列:数据注解特性之----Table【EF 6 Code-First 系列】
- 9.2 翻译系列:数据注解特性之---Column【EF 6 Code First系列】
- 9.3 翻译系列:数据注解特性之Key【EF 6 Code-First 系列】
- 9.4 翻译系列:EF 6以及 EF Core中的NotMapped特性(EF 6 Code-First系列)
- 9.5 翻译系列:数据注解之ForeignKey特性【EF 6 Code-First系列】
- 9.6 翻译系列:数据注解之Index特性【EF 6 Code-First系列】
- 9.7 翻译系列:EF数据注解特性之--InverseProperty【EF 6 Code-First系列】
- 9.8 翻译系列:数据注解特性之--Required 【EF 6 Code-First系列】
- 9.9 翻译系列:数据注解特性之--MaxLength 【EF 6 Code-First系列】
- 9.10 翻译系列:EF数据注解特性之StringLength【EF 6 Code-First系列】
- 9.11 翻译系列:数据注解特性之--Timestamp【EF 6 Code-First系列】
- 9.12 翻译系列:数据注解特性之ConcurrencyCheck【EF 6 Code-First系列】
- 10.翻译系列:EF 6中的Fluent API配置【EF 6 Code-First系列】
- 10.1.翻译系列:EF 6中的实体映射【EF 6 Code-First系列】
- 10.2.翻译系列:使用Fluent API进行属性映射【EF 6 Code-First】
- 11.翻译系列:在EF 6中配置一对零或者一对一的关系【EF 6 Code-First系列】
- 12.翻译系列:EF 6 中配置一对多的关系【EF 6 Code-First系列】
- 13.翻译系列:Code-First方式配置多对多关系【EF 6 Code-First系列】
- 14.翻译系列:从已经存在的数据库中生成上下文类和实体类【EF 6 Code-First系列】
- 15.翻译系列:EF 6中的级联删除【EF 6 Code-First 系列】
- 16.翻译系列:EF 6 Code -First中使用存储过程【EF 6 Code-First系列】
- 17.翻译系列:将Fluent API的配置迁移到单独的类中【EF 6 Code-First系列】
- 18.翻译系列:EF 6 Code-First 中的Seed Data(种子数据或原始测试数据)【EF 6 Code-First系列】
- 19.翻译系列:EF 6中定义自定义的约定【EF 6 Code-First约定】
- 20.翻译系列:Code-First中的数据库迁移技术【EF 6 Code-First系列】
- 20.1翻译系列:EF 6中自动数据迁移技术【EF 6 Code-First系列】
- 20.2.翻译系列:EF 6中基于代码的数据库迁移技术【EF 6 Code-First系列】
- 21.翻译系列:Entity Framework 6 Power Tools【EF 6 Code-First系列】
数据注解特性是.NET特性,可以在EF或者EF Core中,应用于实体类上或者属性上,以重写默认的约定规则。
在EF 6和EF Core中,数据注解特性包含在System.ComponentModel.DataAnnotations命名空间和System.ComponentModel.DataAnnotations.Schema命名空间下。
这些特性不仅仅适用于EF,同样适用于ASP.NET MVC以及数据控件。数据注解特性,在EF 6和EFCore中工作方式都是相同的、效用一样的。
System.ComponentModel.DataAnnotations Attributes
特性 | 描述 |
Key | 应用于实体的一个属性上,然后就生成表里面的主键 |
Timestamp | 应用于实体的一个属性上,然后生成表的列的类型就是RowVersion |
ConcurrencyCheck | 应用的属性上,然后相应的列就会生成一个乐观检查 |
Required | 应用的属性上面,生成一个不为空的列,然后映射到数据库的列中 |
MinLength | 定义最小字符串长度,然后映射到数据库的列中 |
MaxLength | 定义最大字符串长度,然后映射到数据库的列中 |
StringLength | 可以指定属性列允许的最大字符串长度,然后映射到数据库的列中 |
System.ComponentModel.DataAnnotations.Schema Attributes
特性 | 描述 |
Table | 应用于实体,可以配置表名和模式名 |
Column | 应用于实体的属性上,可以配置相应的列名,列顺序以及数据类型 |
Index | 应用于实体的属性上,可以为列生成索引(EF 6.1以上的版本才支持) |
ForeignKey | 应用于实体的属性上,然后生成外键属性 |
NotMapped | 可以应用于实体或者实体的属性上,应用于实体上,就不会生成表,应用于属性上,就不会生成列 |
DatabaseGenerated | 配置列自动生成,可以有三个选项:identity【自增】, computed【计算】 or none【无】 |
InverseProperty | 应用于属性上。就是有相同的关系的时候,用于反转导航属性。【概念不好说,等会后面有例子讲解。】 |
ComplexType | 在EF 6中标记类是复杂类型,注意:EF Core 2.0 中不支持这个Complex特性 |
我们在后面的子节中,来好好学习一个每个特性。
最新文章
- 38 网络相关函数(六)——live555源码阅读(四)网络
- NYOJ题目769乘数密码
- PostGreSQL最简安装
- 软件工程课程作业(二)--四则运算2改进版(c++)
- A Case for Flash Memory SSD in Enterprise Database Applications
- 获取Host文件权限 注册表导入
- Javascript图片轮播
- js获取名字为XX的标签
- Javascript获取浏览器版本
- 第六百二十六天 how cna I 坚持
- Web前端知识体系精简
- 初识Hibernate之理解持久化类
- Java自己动手写连接池二
- Blending, Bootstrap
- 安卓高级3 RecyclerView 和cardView使用案例
- MYSQL的安全模式:sql_safe_updates介绍
- JavaScript的基本包装类型_String类型
- Spring Boot参数校验
- 导入另一个 Git库到现有的Git库并保留提交记录
- 华中农业大学校赛 I Catching Dogs
热门文章
- #2 codeforces 480 Parcels
- Codeforces 498B Name That Tune 概率dp (看题解)
- python中的协程:greenlet和gevent
- BZOJ5090 组题 BZOJ2017年11月月赛 二分答案 单调队列
- Spring日记_01 之 Maven项目的创建和更新
- C++ 冒泡排序、选择排序、快速排序
- QT学习之第一个程序
- pandas学习(创建数据,基本操作)
- 利用Solr服务建立的站内搜索雏形
- 洛谷.T22136.最长不下降子序列(01归并排序 分治)