CSFrameworkV6 |软件开发平台 | 明细表图片处理机制|C/S开发框架
目录
操作步骤
1. 明细表格添加图片列 (colD_ImgSmall)


绑定数据字段:ImgSmall
ColumnEdit 设置为 RepositoryItemPictureEdit 类型,改名:rep_ImgSmall


2. 明细表 res_XXX 模型添加图片字段
C# 全选
public string Img_isid { get; set; }
public System.Byte[] ImgSmall { get; set; }
public System.Byte[] ImgLarge { get; set; }3. 加载图片右键弹出菜单 (Form.InitializeForm方法)

在Form.InitializeForm 方法内添加下面代码:
C# 全选
//加载图片菜单
DetailImageManager.LoadImageMenu(this, gvDetail, rep_ImgSmall, nameof(res_tb_QOs.ImgLarge),
(large, small) =>
{
var row = gvDetail.GetObject<res_tb_QOs>();
if (large != null)//加载图片
{
row.ImgLarge = large;
row.ImgSmall = small;
}
else//删除图片
{
row.ImgLarge = null;
row.ImgSmall = null;
row.Img_isid = null;
}
});注意
注意:rs_tb_QOs 改名 为当前明细表 res_XXX 模型

4. Form.DoSave方法保存资料
C# 全选
SaveResult result = _BLL.Update();//调用业务逻辑保存数据方法
if (result.Success) //保存成功, 不需要重新加载数据,更新当前的缓存数据就行.
{
// 省略
}
5. BLL层 Update方法
添加一个 Update() 无参数方法。 重写Update方法,直接调用 _Bridge.Update接口:
C# 全选
//添加一个 Update 无参数方法
public SaveResult Update()
{
return _Bridge.Update(this.CurrentBusiness);
}
//重写方法,直接调用 _Bridge.Update接口
public override SaveResult Update(BusinessData<res_tb_QO, res_tb_QOs> data)
{
return _Bridge.Update(data);
}IBridge_XX.cs 修改 Update 方法:
C# 全选
SaveResult Update(BusinessData<res_tb_QO, res_tb_QOs> data);6. DAL层Update方法
参考: dal_QO.cs

复制 GetImageData 方法,注意下面的修改项:

注意下面3个修改项:

7. DAL层的GetDataByKey方法
参考: dal_QO.cs
关联查询明细表及图片资料。
C# 全选
//关联查询明细表资料及图片
var listDetail = (from s in q_QOs//明细表
join c in q_Images on s.isid equals c.DocNo into tmp1//关联逻辑:明细表isid = dt_images.DocNo
from c in tmp1.DefaultIfEmpty()
where s.QONO == docNo.Trim()//外键,关联主表单据号码
select new res_tb_QOs
{
isid = s.isid,
QONO = s.QONO,
Queue = s.Queue,
ProductCode = s.ProductCode,
ItemDescription = s.ItemDescription,
//图片资料
ImgLarge = c.ImgLarge,
ImgSmall = c.ImgSmall,
Img_isid = c.isid,
}).ToList();

注意事项
1. GetDataByKey必须返回 res_XXX模型

2. 明细表的res_XXX模型必须返回 dt_Images 表三个字段

3. DAL.Update方法保存图片


参考文档:
CSFrameworkV6软件开发平台主流数据库测试报告(SqlServer/MySql/Oracle/达梦)|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.0 | 自动创建数据库备份计划|C/S开发框架
CSFrameworkV6软件开发框架+达梦数据库(国产数据库)测试报告|C/S开发框架
CSFrameworkV6软件开发框架 | MySql数据库测试报告|C/S开发框架
CSFrameworkV6软件开发框架 | Oracle数据库测试报告|C/S开发框架
CSFrameworkV6快速开发框架 | SqlServer(MsSql)数据库测试报告|C/S开发框架
CSFrameworkV6.1前端+WebApiV3后端测试报告(前后端分离)|C/S开发框架
C/S架构软件开发平台V6旗舰版 | 客户端运行环境需要的程序文件|C/S开发框架
CSFrameworkV6 试用版(Trial Version)开发指南|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6 主页|C/S开发框架
C/S架构软件开发平台旗舰版V6.1迭代开发记录|工作流程引擎集成|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.0 | 自动备份数据库计划|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.1 | 新功能汇总|C/S开发框架
C/S快速开发框架旗舰版CSFrameworkV6.0 | VS开发环境配置|C/S开发框架
CSFrameworkV6旗舰版|成功案例|塑料板材行业ERP系统|C/S开发框架
CSFrameworkV6旗舰版|成功案例|纸箱行业ERP系统|C/S开发框架
CSFrameworkV6软件开发平台主流数据库测试报告(SqlServer/MySql/Oracle/达梦)|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.0 | 自动创建数据库备份计划|C/S开发框架
CSFrameworkV6软件开发框架+达梦数据库(国产数据库)测试报告|C/S开发框架
CSFrameworkV6软件开发框架 | MySql数据库测试报告|C/S开发框架
CSFrameworkV6软件开发框架 | Oracle数据库测试报告|C/S开发框架
CSFrameworkV6快速开发框架 | SqlServer(MsSql)数据库测试报告|C/S开发框架
CSFrameworkV6.1前端+WebApiV3后端测试报告(前后端分离)|C/S开发框架
C/S架构软件开发平台V6旗舰版 | 客户端运行环境需要的程序文件|C/S开发框架
CSFrameworkV6 试用版(Trial Version)开发指南|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6 主页|C/S开发框架
C/S架构软件开发平台旗舰版V6.1迭代开发记录|工作流程引擎集成|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.0 | 自动备份数据库计划|C/S开发框架
C/S架构软件开发平台 | 旗舰版V6.1 | 新功能汇总|C/S开发框架
C/S快速开发框架旗舰版CSFrameworkV6.0 | VS开发环境配置|C/S开发框架
CSFrameworkV6旗舰版|成功案例|塑料板材行业ERP系统|C/S开发框架
CSFrameworkV6旗舰版|成功案例|纸箱行业ERP系统|C/S开发框架
其它资料:
什么是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内容管理系统 |
什么是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内容管理系统 |
在线客服
