• 选择之后,不能再选择。分配之后,不能再分配


    参考下图来理解标题:


    即是说模块被分配之后,不能让用户再选择来分配。

    分析:
    模块是存储在一张表中。从数据库读取出来,绑定在checkboxList上。
    分配的数据,是存在另一张表中。
    这样子数据库有2张表存储这些数据。

     Ok,为checkbox list准备的数据源:

    上图中IsDistribution是在两个张均不存在的字段,是在SELECT时,我们添加上去的。它是根据分配后的表的数据来判断,分配后为1,没有分配的为0:
    那在数据库怎样判断呢?使用表关联即可。
    先这样子,使用LEFT JOIN :



    上图中的#um即是第二张分配表,如果没有被分配的,外键值为NULL。
    um.[Module_nbr] as [IsDistribution]

    只要判断NULL即可。如果为空即是没有被分配的,我们再改一下SQL语句:


    有了数据源之后,在ASP.NET MVC的Razor就可以这样去写了:

    好了,超简单的实现方法。

    最终的效果:

  • 相关阅读:
    Oracle SQL语句记录
    Gvim 在进行文件对比时报cannot read or write temp files
    Java Lock
    Java Synchronized
    CLH锁 、MCS锁
    JVM 运行时内存结构
    XSS攻击及防御
    Java IO 技术之基本流类
    Java 对象的串行化(Serialization)
    Java final关键字
  • 原文地址:https://www.cnblogs.com/insus/p/6097536.html
Copyright © 2020-2023  润新知