复选框表示包含在列表中?

时间:2011-01-25 09:39:53

标签: .net vb.net linq linq-to-sql

我有两个表,分别叫MachineType。由于他们有很多关系,我的数据库中有一个MachineType分辨率表。没问题。

最终用户需要能够管理这些 - 创建新类型并将其分配给计算机。我有一个XtraGridView用于显示Machine作为主人,Type作为详细信息。

最初,我使用LookupType下拉列表添加到MachineType详细信息视图中。但这会产生重复,并不是显示此信息的最佳方式。我想要一系列复选框(每个Type选项一个),以便用户可以为每台机器单击相应的复选框,从而避免重复。保存后,可以生成相应的MachineType行。

我只是手动编写代码,但如果在DevExpress或我可以使用的.net框架中有某种二进制集合映射,我宁愿重新发明轮子。

干杯

编辑:This就是我的意思。来自this thread。但是,它们将其存储为集合(由逗号描述的字符串)而不是一系列数据库行。

1 个答案:

答案 0 :(得分:1)

您是否只想将值绑定到linq查询?

from m in Machine
from t in Type
select new {m,t}

这将为每个配对提供交叉连接 在保存时,您只需检查MachineType表是否已配对

from mt in MachineType
where mt.MachineId == <machine from list>
&& mt.TypeId == <type from list>

如果你想传递查询列表,你可以发送一个配对列表,你可以发送一个字典并循环遍历它,或者如果字典支持那么就使用Contains()函数。