更新主表的主键模式UpdateKeyMode枚举详解(2)
更新主表的主键模式UpdateKeyMode枚举详解(2)
C# Code: /// <summary> /// 更新主表的主键模式 /// </summary> public enum UpdateKeyMode { /// <summary> /// 未指定.单据号码由用户手工输入 /// </summary> None, /// <summary> /// 自动生成流水号 /// </summary> OnlyDocumentNo, /// <summary> /// 自动生成36位GUID(全球唯一标识) /// </summary> OnlyGuid } //来源:C/S框架网(www.csframework.com) QQ:23404761 模拟主从表结构: 主表M(SONO varchar(36)),SONO字段为主表的主键。 从表D(RowID varchar(36), SONO varchar(36)),RowID为明细表主键,SONO为明细表的外键。 UpdateKeyMode枚举类型详解: 1. None: 单据号码由用户手工输入。 新增记录时必须给主表的SONO字段手工赋值,如:SO8888888。 提交数据前,必须给从表的SONO字段赋值为SO8888888,若由多条记录可循环处理逐条赋值。 明细表的RowID务必在新增明细记录时赋值(取GUID值)。 通过以后处理即完成主外键设置,可提交数据。 重点:若采用此模式,ORM模型的 isDocFieldName 参数必须设为false! 2. OnlyDocumentNo:单据号码自动生成。 若采用单据号码自动生成的模式,首先在主表的ORM Model 指定主键对应的字段名,参考下图: ORM_TableAttribute:定义资料表对应的ORM模型的特性类,指定PrimaryKey的字段名,如:INNO。 ORM_FieldAttribute:定义每个字段对应的ORM模型的特性类。 若isPrimaryKey=true,表示该字段为主键。 若isDocFieldName=true,表示该字段为字段生成的单据号码(流水号码)。 _KeyName=INNO:定义该表的主键字段名的静态变量(也可用常量定义)。 参考上图红圈重点标注的配置信息,即可正确提交数据,单据号码会自动生成,若同时提交明细表资料,外键的值开发框架底层会自动赋值处理。 3. OnlyGUID:自动生成36位GUID(全球唯一标识)。 新增记录时必须给主表的SONO字段指定GUID,如:aa870685-a11b-45e9-b1c0-8e9eac326afd。 提交数据前,必须给从表的SONO字段赋值为 aa870685-a11b-45e9-b1c0-8e9eac326afd, 若由多条记录可循环处理逐条赋值。 明细表的RowID务必在新增明细记录时赋值(取GUID值)。 通过以后处理即完成主外键设置,可提交数据。 重点:若采用此模式,ORM模型的 isDocFieldName 参数必须设为false! 参考文章: 手动和自动生成业务单据号码UpdateKeyMode详解(1)
参考文档:
开发应用-观察者模式之C#实现缓存数据更新 (C# 更新Web引用) 此计算机上没有安装枚举Web引用所需的组件 手动和自动生成业务单据号码UpdateKeyMode详解(1) 未能进入中断模式,源文件不属于正在调试的项目 关于ORM实体类主键设置的几点建议(Tag:复合主键,ISID,PK) C#.NET开发框架的业务主键和逻辑主键定义 ADO Direct(直连模式)能不能改成客户端在服务端注册后再访问数据库 WCF App.Config 配置参数详解:OpenTimeout, CloseTimeout, SendTimeout, ReceiveTimeout 开发框架支持三级菜单及权限控制,有图详解 作为一个学生,想问下这套框架是三层架构吗?使用了那些设计模式? C# 调用API枚举窗体,根据标题还原窗体 更新第一条记录保存后没有刷新表格的缓存数据 SQL连接管理器增加功能: 后台连接模式配置 WCF模式下,如果远程服务停了,客户端有假死现象,如何给用户一个提示,或者设置超时时间 使用观察者模式实时更新程序打开多个界面绑定组件的数据源
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |