【问题标题】:Populating a list box with variable names from LINQ generated class使用来自 LINQ 生成的类的变量名称填充列表框
【发布时间】:2009-11-17 00:17:10
【问题描述】:

我是 Visual Basic 的新手 - 使用 Visual Studio 2008,似乎找不到执行以下操作的方法:

我在 SQL Server 数据库中有一些表,并使用 LINQ to SQL 创建了这些表的类。

这是我想要的一个精简示例: listbox1 填充了表名 - APS、SMPS、WCPC、CFLAPS 然后从 SelectedIndexChanged 事件中,listbox2 应该填充所选表的列标题。

我从数据库中获取数据没有问题,并且可以通过从 LINQ 查询(例如 APS.ID、APS.count 等)创建的匿名类型对象访问所有这些标头,但使用这些变量名称填充列表框而不是其中的数据似乎难以捉摸。

这可能是一个跨平台编码问题,而不是特定于 VB 的问题,所以如果你有 C# 或其他任何解决方案,如果你能告诉我,我会很高兴。

【问题讨论】:

    标签: vb.net visual-studio-2008 linq class listbox


    【解决方案1】:

    我建议使用反射来查找每个属性的名称。 我发现这个 C# example 你可能会觉得有用。

    【讨论】:

    • 在我看来,反射是要走的路!
    【解决方案2】:

    您可能需要分析一个表达式树。基本上,如果您有一个 LINQ to SQL 查询,您将获得一个具有“表达式”属性的 IQueryable 对象。此属性应为您提供有关匿名类型及其属性的信息。 这是一个很好的起点(是的,它是为 C# 编写的,但也适用于 VB): http://blogs.msdn.com/charlie/archive/2008/01/31/expression-tree-basics.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      • 2016-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多