CodeGen融合核心扩展定制文件

融合核心定制文件

Harmony核心环境的各个方面都可以通过创建一个定制文件来定制,该文件是一个名为Harm的JSON文件onyCoreCustomization.json。必须将此文件与正在使用的CodeGen模板放在同一位置。

自定义文件必须至少包含一个空JSON对象:

{

}

然后,可以通过向对象添加特定的命名属性来自定义Harmony核心环境的各个方面。可以在下面找到这样做的示例。

自定义关系

要自定义由扩展标记

<HARMONYCORE_relation_NAME>和<HARMONYCORE_FROM_relation_NAME>

生成的关系名称,必须向JSON对象添加名为CustomRelationNames的属性。属性必须定义一个对象数组,每个对象都为特定关系提供自定义名称。例如:

{

"CustomRelations": [

{

"FromStructure": "CUSTOMERS",

"FromKey": "CUSTOMER_NUMBER",

"ToStructure": "ORDERS",

"ToKey": "CUSTOMER_NUMBER",

"RelationName": "CustomerOrders",

"RelationType": "D",

"ValidationMode": "None",

"CustomValidatorName": "",

"BackRelation": "ORDERS-CUSTOMERS-CUSTOMER_NUMBER-CUSTOMER_NUMBER"

},

{

"FromStructure": "CUSTOMERS",

"FromKey": "FAVORITE_ITEM",

"ToStructure": "ITEMS",

"ToKey": "ITEM_NUMBER",

"RelationName": "CustomerFavoriteItem",

"RelationType": "C",

"ValidationMode": "ValuePresent",

"CustomValidatorName": "",

"BackRelation": "ITEMS-CUSTOMERS-ITEM_NUMBER-FAVORITE_ITEM"

},

{

"FromStructure": "CUSTOMERS",

"FromKey": "CUSTOMER_NUMBER",

"ToStructure": "CUSTOMER_NOTES",

"ToKey": "CUSTOMER_NUMBER",

"RelationName": "CustomerNotes",

"RelationType": "D",

"ValidationMode": "None",

"CustomValidatorName": "",

"BackRelation": "CUSTOMER_NOTES-CUSTOMERS-CUSTOMER_NUMBER-CUSTOMER_NUMBER"

}

]

}

可以向数组中添加任意数量的对象以自定义任意数量的关系。必须按照存储库中的定义准确指定结构和密钥名称,并且必须使用大写。

FromStructure属性

此属性应设置为要自定义的关系的存储库中的FromStructure结构的名称,并用于标识要自定义的存储库关系。

FromKey属性

此属性应设置为要自定义的关系的存储库中FromKey键的名称,并用于标识要自定义的存储库关系。

ToStructure结构性能

此属性应设置为要自定义的关系的存储库中ToStructure结构的名称,并用于标识要自定义的存储库关系。

 ToKey Property

此属性应设置为要自定义的关系的存储库中ToKey键的名称,并用于标识要自定义的存储库关系。

RelationName属性

此属性可用于自定义添加到数据模型类以公开关系的导航属性的名称。默认情况下,导航属性将命名为REL_<ToStructureName>,但当overrided时,将设置为REL_<RelationName>。

RelationType属性

此属性可用于重写关系的和谐核心关系类型,以防CodeGen标识不正确的关系类型。关系类型包括:

RequiresMatch Property (DEPRECATED)

此属性以前用于定义关系是否需要验证。当设置为true时,将始终尝试验证。当设置为false时,只有在源字段中存在非空格(alpha)或非零(decimal)值时才会尝试验证。该机制被证明不足以在几个可能的场景中正确执行验证,并已被ValidationMode属性所取代(见下文)。

如果在自定义文件中找到RequiresMatch=true且ValidationMode不存在,则ValidationMode设置为Always。

如果在自定义文件中找到RequiresMatch=false且ValidationMode不存在,则ValidationMode设置为None。

建议删除RequiresMatch的所有实例,并使用适当的ValidationMode属性进行替换。

CodeGen融合核心扩展定制文件的更多相关文章

  1. CodeGen融合核心关系循环扩展

    CodeGen融合核心关系循环扩展 Expansion Tokens <HARMONYCORE_RELATION_NAME> 插入当前关系的名称.关系名称将自动生成,但可以由Harmony ...

  2. 删除空文件夹 清除CS扩展名文件 bat

    删除空文件夹.删的干净.删的彻底. 将下列代码复制到txt中保存.并把后缀.txt命成.bat.然后运行即可. 方案1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

  3. UNIX标准化及实现之POSIX标准扩展头文件

    POSIX标准定义的XSI(X/Open System Interface)扩展头文件 头文件 说明 <cpio.h> cpio归档值 <dlfcn.h> 动态链接 <f ...

  4. php使用inotify扩展监控文件或目录,如果发生改变,就执行指定命令

    通过inotify扩展监控文件或目录的变化,如果发生变化,就执行命令. 可以应用于 swoole 中,如果文件发生变化,就执行 kill -USR1 进程PID 来实现热更新. <?php cl ...

  5. Nginx 核心配置-检测文件是否存在

    Nginx 核心配置-检测文件是否存在 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. try_files会按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件 ...

  6. Liferay7 BPM门户开发之42: Liferay核心JSP定制扩展

    Liferay最大的好处是不仅接口强大,利于扩展,就连JSP定制扩展都提供了3种方式. 修改核心jsp代码,有3种修改方式:1.暴力修改直接修改(位于portal-web/docroot/html), ...

  7. maven(4)------maven核心pom.xml文件常用元素分析

    在maven项目中,pom文件是核心文件 pom.xml: <?xml version="1.0" encoding="UTF-8"?> <p ...

  8. DiscuzX /source/function/function_core.php通用核心函数库文件分析

    ... <?php /** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to l ...

  9. [内核驱动] VS2012+WDK 8.0 Minifilter实现指定扩展名文件拒绝访问

    转载:http://blog.csdn.net/C0ldstudy/article/details/51585708 转载:http://blog.csdn.net/zj510/article/det ...

随机推荐

  1. Android内核模块编译执行

    Author: GeneBlue 0X01 前言 内核驱动是漏洞的高发区,了解Android驱动代码的编写是分析.利用驱动漏洞的基础.本文以一个"hello"驱动为例,简单介绍内核 ...

  2. C#-获取页面源代码

    /// <summary> /// 获取源代码 /// </summary> /// <param name="url"></param& ...

  3. Win64 驱动内核编程-26.强制结束进程

    强制结束进程 依然已经走到驱动这一层了,那么通常结束掉一个进程不是什么难的事情.同时因为win64 位的各种保护,导致大家慢慢的已经不敢HOOK了,当然这指的是产品.作为学习和破解的话当然可以尝试各种 ...

  4. thymeleaf-extras-springsecurity在Spring或SpringBoot中html页面命名空间

    xmlns:sec="http://www.thymeleaf.org/extras/spring-security"

  5. MySQL 连接超时:报错SQLSTATE[HY000] [2002] Connection timed out解决

    当你的代码部署到服务器里的时候,你的mysql 的host 值 应该为 127.0.0.1 而不是 你的服务器ip 不然就会报错. 其实当你的代码进入到服务器里的时候,mysql和代码是相当于在同一个 ...

  6. CCNA 第一章 网络互联

    1: 网络互联基础 互联网络定义:使用路由器将多个网络连接起来,并配置IP或者IPV6协议的逻辑网络编址方案,便组成了互联网络. 导致LAN(局域网)拥塞的常见原因: (1):广播域或者冲突域中的主机 ...

  7. Pycharm集成码云,图文手把手教学!

    Pycharm集成码云 码云(http://gitee.com)是开源中国推出的代码托管平台,支持 Git 和 SVN,提供免费的私有仓库托管 可以通过码云保管你的代码,每次修改完代码提交,就是一个版 ...

  8. 【原创】JVM如何运行Java程序的?

    [Deerhang] 我们知道Java程序的运行是依赖于JVM虚拟机的,JVM类语言经过编译生成class字节码文件,字节码又经JVM进一步的编译生成机器码,最终运行在硬件上.那么JVM存在的意义是什 ...

  9. IP包头部格式解析

    IPv4首部一般是20字节长.在以太网帧中,IPv4包首部紧跟着以太网帧首部,同时以太网帧首部中的协议类型值设置为080016. IPv4提供不同,大部分是很少用的选项,使得IPv4包首部最长可扩展到 ...

  10. [刷题] 437 Paths Sum III

    要求 给出一棵二叉树及一个数字sum,判断这棵二叉树上存在多少条路径,其路径上的所有节点和为sum 路径不一定始于根节点,终止于叶子节点 路径要一直向下 思路 分情况讨论:根节点在路径上(8) / 根 ...