Possible Duplicate:
Accessing C# Anonymous Type Objects
  Working with C# Anonymous Types




我在实体上使用linq从客户表中获取ID和全名。

  public IQueryable RegresaClientesPorEmpresa(int id_emp)
    {
        var clientes = from c in context.clientes
                       where c.IDEmpresa == id_emp
                       select new
                       {
                           c.IDCliente,
                           NomComp = c.Nombres +" "+ c.ApellidoP +" "+ c.ApellidoM
                       };
        return clientes;
    }


结果用作组合框的数据源,然后在我的组合中触发SelectionChangeCommitted时,我希望将所选项目添加到列表框中:

var clientes = operaciones.RegresaClientesPorEmpresa(2);
 combo_cliente.DataSource = clientes;
 combo_cliente.DisplayMember = "NomComp";
 combo_cliente.ValueMember = "IDCliente";

 listBox_grupo.DisplayMember = "NomComp";
 listBox_grupo.ValueMember = "IDCliente";

 private void combo_cliente_SelectionChangeCommitted(object sender, EventArgs e)
    {
        listBox_grupo.Items.Add(combo_cliente.SelectedItem);
    }


到这里为止,一切都很好。最后,我想从添加到我的列表框中的所有项目中获取所有“ IDCliente”的值,问题是我不知道该怎么做,因为每个项目都是匿名数据类型。谁能帮我?

最佳答案

匿名类型的范围限于“声明”它的方法(当然,它不是真正声明的,但是您明白我的意思了)。如果要以其他方法使用查询结果,请创建一个命名类型以保存结果。

10-01 19:32
查看更多