加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-web-api – ODataConventionModelBuilder的约定是什么?

发布时间:2020-12-16 03:29:45 所属栏目:asp.Net 来源:网络整理
导读:有很多使用ODataConventionModelBuilder和简单的人为模型的例子,通常只有一个类. 但实际上并没有解释这些惯例是什么;如何编写符合约定的模型.它没有官方文档. 那么惯例是什么? 解决方法 从我到目前为止看到的,这些约定是实体框架使用的,而不是OData的任何新
有很多使用ODataConventionModelBuilder和简单的人为模型的例子,通常只有一个类.

但实际上并没有解释这些惯例是什么;如何编写符合约定的模型.它没有官方文档.

那么惯例是什么?

解决方法

从我到目前为止看到的,这些约定是实体框架使用的,而不是OData的任何新约定.如果我错了,请纠正我.

更多关于代码优先的约定,下面,但在Julie Lerman的书中还有更多我还没有在网上找到它们的详尽列表.

http://blogs.msdn.com/b/efdesign/archive/2010/06/01/conventions-for-code-first.aspx

更新

EF建模约定系统是可插入的,每个约定都由一个封装行为的类表示,这些类列在这里:

http://msdn.microsoft.com/en-us/library/system.data.entity.modelconfiguration.conventions(v=vs.113).aspx

但是,如果有的话,这对ODataConventionModelBuilder适用或使用哪些是没有帮助的.

> AssociationInverseDiscoveryConvention – 当相关类型之间仅存在一对导航属性时,提供检测导航属性为彼此反转的约定.> AttributeToColumnAnnotationConvention – Code First约定的通用类,它从.NET属性读取属性并基于这些属性生成列注释.> AttributeToTableAnnotationConvention – Code First约定的通用类,它从.NET类型读取属性并基于这些属性生成表注释.> ColumnAttributeConvention – 表示处理模型中属性上找到的ColumnAttribute实例的约定.> ColumnOrderingConvention – 表示应用通过ColumnAttribute或theDbModelBuilder API指定的列排序的约定.> ColumnOrderingConventionStrict – 应用通过ColumnAttribute或theDbModelBuilder API指定的列排序的约定.如果检测到重复的已配置列顺序,则会抛出此约定.> ComplexTypeAttributeConvention – 表示处理模型中类型上的ComplexTypeAttribute实例的约定.> ComplexTypeDiscoveryConvention – 表示如果类型没有主键,没有映射基类型且没有导航属性,则将类型配置为复杂类型的约定.> ConcurrencyCheckAttributeConvention – 表示在模型中的属性上处理ConcurrencyCheckAttributefound实例的约定.>约定 – 不覆盖配置的约定.> DatabaseGeneratedAttributeConvention – 表示处理在模型中的属性上找到的DatabaseGeneratedAttribute实例的约定.> DecimalPropertyConvention – 将精度设置为18并将小数属性缩放为2的约定.> DeclaredPropertyOrderingConvention – 表示将主键属性首先显示的约定.> ForeignKeyAssociationMultiplicityConvention – 表示根据外键属性的CLR可为空性来区分可选和必需关系的约定.> ForeignKeyDiscoveryConvention – 表示发现外键属性的约定的基类.> ForeignKeyIndexConvention – 表示引入外键索引的约定.> ForeignKeyNavigationPropertyAttributeConvention – 表示处理模型中导航属性上的ForeignKeyAttribute实例的约定.> ForeignKeyPrimitivePropertyAttributeConvention – 表示处理在模型中的外键属性上找到的ForeignKeyAttribute实例的约定.> IdKeyDiscoveryConvention – 检测主键属性的约定.按优先顺序识别的命名模式为:1.’Id’2.[类型名称] Id主键检测不区分大小写.> IndexAttributeConvention – 用于在模型中发现属性和generateIndexAnnotation列注释的IndexAttributeattributes的约定.> InversePropertyAttributeConvention – 表示处理模型中属性上的InversePropertyAttribute实例的约定.> KeyAttributeConvention – 处理模型中属性的KeyAttribute实例的约定.> KeyDiscoveryConvention – 表示发现主键属性的约定的基类.> ManyToManyCascadeDeleteConvention – 从多个关系中涉及的两个表中向连接表添加级联删除的约定.> MappingInheritedPropertiesSupportConvention – 用于确保在映射继承属性时不会创建无效/不受支持的映射的约定> MaxLengthAttributeConvention – 表示处理在模型中的属性上找到的MaxLengthAttribute实例的约定.> NavigationPropertyNameForeignKeyDiscoveryConvention – 用于发现外键属性的约定,其名称是从属导航属性名称和主体类型主键属性名称的组合.> NotMappedPropertyAttributeConvention – 表示处理模型中属性上的NotMappedAttribute实例的约定.> NotMappedTypeAttributeConvention – 表示处理模型中类型上的NotMappedAttribute实例的约定.> OneToManyCascadeDeleteConvention – 提供一种约定,以便为任何所需关系启用级联删除.> OneToOneConstraintIntroductionConvention – 提供一种约定,将依赖实体类型的主键配置为一对一关系中的外键.> PluralizingEntitySetNameConvention – 表示将实体集名称设置为实体类型名称的复数形式的约定.> PluralizingTableNameConvention – 表示将表名设置为实体类型名称的复数形式的约定.> PrimaryKeyNameForeignKeyDiscoveryConvention – 用于发现名称与主体类型主键属性名称匹配的外键属性的约定.> PrimitivePropertyAttributeConfigurationConvention – 处理在模型中的基元属性上找到的CLR属性的约定的基类.> PropertyAttributeConfigurationConvention – 处理在模型中的类型属性上找到的CLR属性的约定的基类.> PropertyMaxLengthConvention – 表示为类型支持长度构面的属性设置最大长度的约定.默认值为128.> RequiredNavigationPropertyAttributeConvention – 处理模型中导航属性上找到的RequiredAttribute实例的约定.> RequiredPrimitivePropertyAttributeConvention – 表示处理模型中基本属性上的RequiredAttribute实例的约定.> SqlCePropertyMaxLengthConvention – 表示当SqlCe是提??供程序时,类型支持长度构面的属性的默认最大长度为4000的约定.> StoreGeneratedIdentityKeyConvention – 表示将整数主键配置为标识的约定.> StringLengthAttributeConvention – 表示处理在模型中的属性上找到的StringLengthAttribute实例的约定.> TableAttributeConvention – 表示处理模型中类型上找到的TableAttribute实例的约定.> TimestampAttributeConvention – 表示处理模型中属性上找到的TimestampAttribute实例的约定.> TypeAttributeConfigurationConvention – 处理模型中找到的CLR属性的约定的基类.> TypeNameForeignKeyDiscoveryConvention – 用于发现外键属性的约定,其名称是主体类型名称和主体类型主键属性名称的组合.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读