【发布时间】:2013-04-25 12:22:25
【问题描述】:
我有一个使用 Linq 的网页和站点。该页面包含一个显示客户并受列表(客户)约束的网格视图。
我使用下面的代码来获得一个客户
Public Function GetCustById(ByVal id As Integer) As Customer Implements ICustomerService.GetCustById
Return DataContext.Customers.SingleOrDefault(Function(c) c.Id = id)
End Function
然后我通过将所有客户 ID 传递到方法中将其绑定到我的 gridview。这会显示我需要的所有行,但我有一个问题。
一些作为外键的列显示为 1,2 等,通常我过去在不同项目上克服这个问题的方法是在数据层的 SQL 查询中添加一个子查询,但正如你猜到的那样这是 Linq,所以我不确定为了让外键使用 Linq 显示为值,什么是/不可能的?
我对 Linq 有点陌生,因此感谢任何可以帮助我的帮助或文章。
谢谢
【问题讨论】:
-
你的问题不清楚。
-
Linq 可以连接,用它们来连接两个表。
-
Erm.... 使用 Linq 获取要显示为值的外键?所以我想知道是否有办法让上面的代码包含外键的值(就像在 tableadapter 中编写子查询时可以做的那样)
-
您能给我们看一个 SQL 示例吗?
-
SELECT Name, Address, Age, GenderID From Customer WHERE CustomerID=@CustomerID // 这将获取 Gender 为 FK 的所有客户信息。这是子查询 (SELECT GenderValue From Genders Where Customer.GenderID = Genders.ID) As GenderValue
标签: c# asp.net sql vb.net linq-to-sql