CSFrameworkV6 - Winform开发框架 - Delete方法使用
CSFrameworkV6 - Winform开发框架 - Delete方法使用在删除客户、供应商资料前,要检查是否有数据引用,被引用的数据不可删除,参考代码:C# Code:
/// <summary>
/// 删除客户、供应商资料
/// </summary>
/// <param name="keyValue"></param>
/// <returns></returns>
public override bool Delete(string keyValue)
{
var obj = _Database.GetQueryable<dt_Customer>().Where(w => w.isid == keyValue).FirstOrDefault();
if (obj != null)
{
//检查数据引用
if (this.IsReference(obj.CustomerCode))
throw new BizException("当前记录不可删除,资料已使用!");
//使用表达式删除一条记录
return base.Delete(w => w.isid == keyValue);
}
return false;
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
/// <summary>
/// 删除客户、供应商资料
/// </summary>
/// <param name="keyValue"></param>
/// <returns></returns>
public override bool Delete(string keyValue)
{
var obj = _Database.GetQueryable<dt_Customer>().Where(w => w.isid == keyValue).FirstOrDefault();
if (obj != null)
{
//检查数据引用
if (this.IsReference(obj.CustomerCode))
throw new BizException("当前记录不可删除,资料已使用!");
//使用表达式删除一条记录
return base.Delete(w => w.isid == keyValue);
}
return false;
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
C# Code:
/// <summary>
/// 检查数据引用
/// </summary>
/// <param name="productCode">产品编码</param>
/// <returns></returns>
private bool IsReference(string customerCode)
{
if (_Database.GetQueryable<tb_SO>().Any(a => a.CustomerCode == customerCode)) return true;//销售单
if (_Database.GetQueryable<tb_PO>().Any(a => a.CustomerCode == customerCode)) return true;//采购单
return false;
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
/// 检查数据引用
/// </summary>
/// <param name="productCode">产品编码</param>
/// <returns></returns>
private bool IsReference(string customerCode)
{
if (_Database.GetQueryable<tb_SO>().Any(a => a.CustomerCode == customerCode)) return true;//销售单
if (_Database.GetQueryable<tb_PO>().Any(a => a.CustomerCode == customerCode)) return true;//采购单
return false;
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
参考文章:

参考文档:
CSFrameworkV6 - Winform开发框架 - GetLookupData方法使用
CSFrameworkV6试用版开发指南 | GetDataByKey 方法使用与扩展应用|C/S开发框架
Winform开发框架 | 表格编辑窗体权限控制|C/S开发框架
CSFrameworkV6.1前端+WebApiV3后端测试报告(前后端分离)|C/S开发框架
企业级C/S系统快速开发框架(Winform+.NET8+EFCore)|C/S开发框架
最新MES系统快速开发平台(Winform+NET8+EFCore)|C/S开发框架
CSFrameworkV6旗舰版 | 多语言及国际化|C/S开发框架
Winform软件开发框架|快速开发平台推荐|C/S开发框架
C/S快速开发框架旗舰版CSFrameworkV6.0 | VS开发环境配置|C/S开发框架
CSFrameworkV6旗舰版 | 基础资料窗体改装主从子表(多级明细表)解决方案|C/S开发框架
CSFrameworkV6开发框架升级VS2022+.NET8+DevExpress24.1操作步骤|C/S开发框架
CSFrameworkV6旗舰版 | 表格多选操作删除记录|C/S开发框架
CSFrameworkV6旗舰版 | 导入导出Excel文件数据开发教程|C/S开发框架
WinFormsApp窗体应用快速开发框架(.NET7+EFCore+VS2022)
CSFrameworkV6旗舰版 | 单表基础资料窗体完整C#源码|C/S开发框架
CSFrameworkV6旗舰版|成功案例|塑料板材行业ERP系统|C/S开发框架
CSFrameworkV6 - Winform开发框架 - GetLookupData方法使用
CSFrameworkV6试用版开发指南 | GetDataByKey 方法使用与扩展应用|C/S开发框架
Winform开发框架 | 表格编辑窗体权限控制|C/S开发框架
CSFrameworkV6.1前端+WebApiV3后端测试报告(前后端分离)|C/S开发框架
企业级C/S系统快速开发框架(Winform+.NET8+EFCore)|C/S开发框架
最新MES系统快速开发平台(Winform+NET8+EFCore)|C/S开发框架
CSFrameworkV6旗舰版 | 多语言及国际化|C/S开发框架
Winform软件开发框架|快速开发平台推荐|C/S开发框架
C/S快速开发框架旗舰版CSFrameworkV6.0 | VS开发环境配置|C/S开发框架
CSFrameworkV6旗舰版 | 基础资料窗体改装主从子表(多级明细表)解决方案|C/S开发框架
CSFrameworkV6开发框架升级VS2022+.NET8+DevExpress24.1操作步骤|C/S开发框架
CSFrameworkV6旗舰版 | 表格多选操作删除记录|C/S开发框架
CSFrameworkV6旗舰版 | 导入导出Excel文件数据开发教程|C/S开发框架
WinFormsApp窗体应用快速开发框架(.NET7+EFCore+VS2022)
CSFrameworkV6旗舰版 | 单表基础资料窗体完整C#源码|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内容管理系统 |
在线客服
