2列表,使用下拉列表选择1列表中的剩余值

时间:2013-01-31 14:57:33

标签: asp.net drop-down-menu

因此,在此页面中,它将显示当前子承包商正在处理此特定BOQ的列表。这存储在'allSubContractors'

这在屏幕上显示为列表。然后我想添加一个下拉框,允许用户选择任何剩余的分包商并将其添加到列表中。

到目前为止,iv已经完成了第一部分工作,其中一个当前的子工程师列表在BOQ显示器上工作,但是对于下拉,我得到的正好与我想要的相反。 下拉显示当前Sub承包商的相同列表,我想要剩余的列表。

我正在使用:

`List<string> allSubContractors = new List<string>();
        ClarkeDBDataContext db = new ClarkeDBDataContext();
        allSubContractors = (from BoqSUBContractors in db.BOQ_SubContractors
                          where BoqSUBContractors.Bill_Of_Quantity_id == this.boqId
                          select BoqSUBContractors.Sub_Contractor.Company_Name).ToList();

        repeaterShowSubContractorName.DataSource = allSubContractors;
        repeaterShowSubContractorName.DataBind();


    List<Sub_Contractor> availableSubContractors = new List<Sub_Contractor>();
    ClarkeDBDataContext db1 = new ClarkeDBDataContext();
    availableSubContractors = (from sc in db1.Sub_Contractors
                               from bsc in db1.BOQ_SubContractors
                               where sc.id == bsc.Sub_Contractor_id
                               && bsc.Bill_Of_Quantity_id == this.boqId
                               select sc).ToList();

    DropDownListSubContractors.DataSource = availableSubContractors;
    DropDownListSubContractors.DataBind();

我正在尝试类似的事情:

    List<Sub_Contractor> availableSubContractors = new List<Sub_Contractor>();
    availableSubContractors = (from sc in db.Sub_Contractors
                               select sc.id).ToList()
                               .Except(allSubContractors);

但是noy快乐,有什么建议吗? Thaks

1 个答案:

答案 0 :(得分:1)

如果你尝试

怎么办?
List<Sub_Contractor> availableSubContractors = 
(
   from sc in db1.Sub_Contractors
   join bsc in db1.BOQ_SubContractors
   on sc.id equals bsc.Sub_Contractor_id
   where bsc.Bill_Of_Quantity_id equals this.boqId
   select sc
).ToList();