代码之家  ›  专栏  ›  技术社区  ›  Mark

Linq到实体、实体引用和DataGridView

  •  1
  • Mark  · 技术社区  · 17 年前

    我试图从实体中选择某些字段作为datagridview的数据源,但我无法使其正常工作。这可能吗?例如,我有一个Customers实体,其中包含多个EntityReference。我想从customers实体和那些EntityReference中获取字段,并在datagridview中显示它们。我还没有提出一个Linq查询来实现这一点,即使您只是将整个实体用作数据源,EntityReference中的字段也不会显示。知道我做错了什么吗?谢谢你的帮助。

    2 回复  |  直到 17 年前
        1
  •  0
  •   Quintin Robinson    17 年前
    from customer in context.customers
    select new 
    {
        Name = customer.Name,
        City = customer.Address.City
    }
    

    这将创建一个自定义对象,您可以看到第二个属性正在引用主实体上的实体字段。。基本上,只需将数据转换为新对象,并将生成的可枚举项绑定到网格。

    对不起,如果这是一个小咕哝,在我的手机上键入。

        2
  •  0
  •   HectorMac    17 年前

    警告:这不是用实体框架引用测试的。

    使用对象数据源时,可以引用对象引用的属性,但必须首先强制转换对象:

    <asp:Label ID="lblCity" runat="server" Text='<%# ((Customer)Container.DataItem).Address.City%>'></asp:Label>
    

    这可能是您在访问实体引用的属性时遇到的问题吗?

    推荐文章