权限管理发现两处BUG及解决方法
权限管理发现两处BUG及解决方法
Bug 1:
点击模块主窗体上的按钮打开窗体时报错,此时sender参数为:SimpleButton, 当转换为ToolStripMenuItem为null导致对象引用失败。

解决方法:
取消 sender as ToolStripMenuItem 类型转换,改为对应的菜单对象。
Bug 2:
权限树无法展示销售模块已设置的权限,原因是frmSalesMain窗体SetMenuTag()方法代码错误:
请改为:
修改后的代码:


解决方法:
取消 sender as ToolStripMenuItem 类型转换,改为对应的菜单对象。
C# Code:
private void menuSalesOrder_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuSalesOrder);
}
private void menuItemInvoice_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuItemInvoice);
}
private void menuItemAR_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuItemAR);
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
private void menuSalesOrder_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuSalesOrder);
}
private void menuItemInvoice_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuItemInvoice);
}
private void menuItemAR_Click(object sender, EventArgs e)
{
MdiTools.OpenChildForm(this.MdiParent as IMdiForm, typeof(frmSO), menuItemAR);
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
Bug 2:
权限树无法展示销售模块已设置的权限,原因是frmSalesMain窗体SetMenuTag()方法代码错误:
C# Code:
menuMainSalesModule.Text = ModuleNames.SalesModule;
menuMainSalesModule.Tag = new MenuItemTag(MenuType.ItemOwner, (int)ModuleID.SalesModule, AuthorityCategory.NONE);
menuMainSalesModule.Text = ModuleNames.SalesModule;
menuMainSalesModule.Tag = new MenuItemTag(MenuType.ItemOwner, (int)ModuleID.SalesModule, AuthorityCategory.NONE);
请改为:
C# Code:
menuMainSalesSystem.Text = ModuleNames.SalesModule;
menuMainSalesSystem.Tag = new MenuItemTag(MenuType.ItemOwner, (int)ModuleID.SalesModule, AuthorityCategory.NONE);
menuMainSalesSystem.Text = ModuleNames.SalesModule;
menuMainSalesSystem.Tag = new MenuItemTag(MenuType.ItemOwner, (int)ModuleID.SalesModule, AuthorityCategory.NONE);
修改后的代码:


参考文档:
VS2022编译解决方案为什么会生成2级Debug子目录|C/S开发框架
EFCore+LINQ 使用DebugView查看LINQ转译后的原生SQL|C/S开发框架
VS编译生成的DEBUG目录中所有文件格式解析-C/S开发框架
VS解决方案快速改名工具(CSFramework.Rename)-获取文件列表BUG
C#程序判断DEBUG测试环境和RELEASE正式环境
修复BUG:WebApiTools.Get方法支持https协议
修复BUG:WebApiTools.Post方法支持Https协议
解决CSFramework企业版v4.x旗舰版v5.0设置皮肤不同步BUG
BUG: 系统管理-模块管理-frmModuleMgr.cs文件
BUG: dalUser.CopyPermission方法
校验明细表数据ValidatingDetailData方法有BUG
权限系统发现BUG,请按提示升级
开发框架修正重要bug,使用SqlDataAdapter.Update方法后没有关闭SQL连接
企业版:CommonData.cs ,GetEmptyTable()方法有Bug
优化代码发现奇异现象,难道是VS的BUG???
V4:菜单管理有bug, 已修正
VS2022编译解决方案为什么会生成2级Debug子目录|C/S开发框架
EFCore+LINQ 使用DebugView查看LINQ转译后的原生SQL|C/S开发框架
VS编译生成的DEBUG目录中所有文件格式解析-C/S开发框架
VS解决方案快速改名工具(CSFramework.Rename)-获取文件列表BUG
C#程序判断DEBUG测试环境和RELEASE正式环境
修复BUG:WebApiTools.Get方法支持https协议
修复BUG:WebApiTools.Post方法支持Https协议
解决CSFramework企业版v4.x旗舰版v5.0设置皮肤不同步BUG
BUG: 系统管理-模块管理-frmModuleMgr.cs文件
BUG: dalUser.CopyPermission方法
校验明细表数据ValidatingDetailData方法有BUG
权限系统发现BUG,请按提示升级
开发框架修正重要bug,使用SqlDataAdapter.Update方法后没有关闭SQL连接
企业版:CommonData.cs ,GetEmptyTable()方法有Bug
优化代码发现奇异现象,难道是VS的BUG???
V4:菜单管理有bug, 已修正
其它资料:
什么是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内容管理系统 |
在线客服
