【发布时间】:2017-10-12 14:42:45
【问题描述】:
我有 8 个按钮,每个按钮执行不同的任务,即编辑、删除、创建等,以及每个任务的上下文菜单
-
我在 DB 中有一个名为 Moderations 的表,它由布尔值组成,即 groupTitle、canEdit、canDelete、canCreate..... groupTitle 是字符串而不是布尔值
我有一个 bool 函数 canDoIt(task, userid) 来检查登录的用户(将有特定的 groupTitle)是否可以执行(函数返回 true 或简而言之,对于提供的任务为 false)
假设,我想检查一个登录的用户是否可以执行任务,通过 canDoit(task, userid) 检查,如果他不能,按钮将被禁用,否则不会...... OnForm_Load 我抛出该函数(或者可能是我需要它的另一个时间)并检查每个按钮,即
btnEdit.Enabled = canDo("canEdit", userID)
btnDelete.Enabled = canDo("canDelete", userID)
btnCreate.Enabled = canDo("canCreat", userID)
cnxMenuEdit.Enabled = canDo("canEdit", userID)
cnxMenuDelete.Enabled = canDo("canDelete", userID)
.
.
.
.....and so on and so forth.
我的方法效果很好,但我有疑问和问题。
第一个问题,这样好吗?
第二个问题,专业吗?
另一个是,这会影响程序或数据库的性能吗?
【问题讨论】:
-
@Sinatr 我不同意。这段代码不完整,需要审查,OP 质疑整体方法,这很适合 SO。
-
@DonBoitnott,“很好吗?”,“专业吗?” 听起来“我不喜欢”,这是“请对某人进行代码审查”。他们有他们的规则,我同意这个问题不适合那里。
标签: c# winforms function coding-style