C# 用c显示sql数据库中的“所有”公司

C# 用c显示sql数据库中的“所有”公司,c#,sql,C#,Sql,我正在更新一个UIC组合框,其中有一个选项可以显示DB表中的所有公司,但我很难让它正常工作。目前有两家公司参展。还有第三个选项,你可以选择全部 基本上这就是当前的代码,bedrijf=company,bedrijven=companys,werknemer=eployee private void MainForm_Load(object sender, System.EventArgs e) { this.Visible = false; this.Cursor = Curs

我正在更新一个UIC组合框,其中有一个选项可以显示DB表中的所有公司,但我很难让它正常工作。目前有两家公司参展。还有第三个选项,你可以选择全部

基本上这就是当前的代码,bedrijf=company,bedrijven=companys,werknemer=eployee

 private void MainForm_Load(object sender, System.EventArgs e)
{
    this.Visible = false;
    this.Cursor = Cursors.WaitCursor;
    loading = true;

    StartupScreen.setStatus("Bezig met laden van overige instellingen...");
    StartupScreen.NextValue();

    //Alleen de bedrijven tonen waar men recht op heeft
    bedrijven.toonUICombo(cbBedrijf, "", "SELECT Bedrijven.id, naam FROM Bedrijven, Werknemer_Bedrijven WHERE Zichtbaar=1 AND Bedrijven.id=Werknemer_Bedrijven.Bedrijven_id AND Werknemer_id=" + Globals.werknemer.getValue("id"));
    try
    {
        cbBedrijf.SelectedValue = Globals.werknemer.getIntValue("DefaultBedrijfId");
        cbBedrijf.Visible = (cbBedrijf.Items.Count != 1);
        uiTab.SelectedIndex = 1;
    }
    catch (Exception ex)
    {
        cbBedrijf.SelectedIndex = 0;
    }
如你所见,有两张桌子。表1公司包含三家公司,即公司1、公司2和所有公司,它们都有一个id/名称对和一些其他详细信息

表2员工单位包含id、员工id、公司id和可见性

请忽略表名,它们是从荷兰语翻译过来的

using (SqlConnection conn = new SqlConnection())
            {
 try
  {
conn.ConnectionString = "data source=yourserver;User ID=userid;Password=password;initial catalog=database;integrated security=False;MultipleActiveResultSets=True;App=EntityFramework";
   conn.Open();

  SqlCommand cmd = new SqlCommand("your sql query here", conn);
  SqlDataReader rd = cmd.ExecuteReader();
  cmb_company.Items.Add("3-All");
 while (rd.Read())
  {
   cmb_company.Items.Add(rd.GetValue(0)+"-"+rd.GetValue(1));
  //if you need to show both id and company name

   }
rd.Close();
conn.close();
}
catch(exception ex)
{
}
}
希望这能有所帮助。。这将在组合框中显示3家公司。。。 1-comp1,2-comp2,3-All
根据所选的值,您应该编写查询以显示员工。

1、2和全部是什么意思?你能把数据库中的记录放在你的问题中吗?1和2是令人兴奋的公司如果所有记录都不在你的数据库中,那么你必须将选项硬编码到你的控制中,如果它在数据库中,请尝试删除where子句动态创建SQL,例如,根据组合框的选择确定where子句应该是什么。@chris用荷兰语向我们解释你试图做什么,我将把它翻译成英语,因为我认为我们在翻译中迷失了方向