public static DbCommand GetCreateAttachmentCommand(Database database, RegisterAttachmentEntityNewLogic attach)
 {
     DbCommand cmd = database.GetStoredProcCommand("P_CreateRegisterAttachment");
     database.AddOutParameter(cmd, "Id", DbType.String, 36);
     database.AddInParameter(cmd, "RegisterId", DbType.String, attach.RegisterId);
     database.AddInParameter(cmd, "SaveName", DbType.String, attach.SaveName);
     database.AddInParameter(cmd, "ShowName", DbType.String, attach.ShowName);
     return cmd;
 }
        public string CreateRegisterWithAttachment(RegisterEntity entity, RegisterAttachmentEntityNewLogic[] registerAttachmentEntityNewLogic)
        {
            string registerId = string.Empty;
            #region 使用事务
            base.UseTran((tran) =>
            {
                DbCommand cmd = RegisterService.GetCreateRegisterCommand(this.Database, entity);
                base.Database.ExecuteNonQuery(cmd, tran);
                registerId = (string)base.Database.GetParameterValue(cmd, "RegisterId");

                base.DeleteRelationData("registerattach", registerId, tran);

                registerAttachmentEntityNewLogic.ToList().ForEach((item) =>
                {
                    item.RegisterId = registerId;
                    DbCommand cmd1 = GetCreateAttachmentCommand(this.Database, item);
                    base.Database.ExecuteNonQuery(cmd1, tran);
                    var attachId = base.Database.GetParameterValue(cmd1, "Id").ToString();
                });
            });
            #endregion
            return registerId;
        }
        public void UpdateRegisterWithAttachment(RegisterEntity entity, RegisterAttachmentEntityNewLogic[] registerAttachmentEntityNewLogic)
        {
            base.UseTran((tran) =>
            {
                var cmd = GetUpdateRegisterCommand(this.Database, entity);
                base.Database.ExecuteNonQuery(cmd, tran);

                base.DeleteRelationData("registerattach", entity.RegisterId, tran);

                registerAttachmentEntityNewLogic.ToList().ForEach((item) =>
                {
                    #region CreateAttachment
                    DbCommand cmd1 = RegisterService.GetCreateAttachmentCommand(this.Database, item);
                    base.Database.ExecuteNonQuery(cmd1, tran);
                    var attachId = base.Database.GetParameterValue(cmd1, "Id").ToString();
                    #endregion
                });
            });
        }