asp.net-mvc - 如何使用 LINQ 显示名称
问题描述
实际上我有两个表我想显示第二个表的使用记录。请帮助我。让我给你举个例子。
[TABLE1]
LocationID LoginID Location_Name
1 101 A
2 102 B
3 103 C
[TABLE2]
ID LoginID No_Of_Item Location ToLocation
1 101 5 1 2
2 102 6 2 3
3 103 7 1 3
这是我的数据库。现在我想显示带有位置名称的 [TABLE2] 记录。但我无法做到这一点。请在此 LINQ 查询中帮助我。
这是我的代码。
public IQueryable<StockTransferViewModel> GetAllStockTransferDetailByLoginId(string LoginId)
{
var StockList = (from aspuser in context.AspNetUsers
join cus in context.Customers on aspuser.Id equals cus.LoginID
join transfer in context.StockTransfers on aspuser.Id equals transfer.LoginID
where transfer.LoginID == LoginId
select new StockTransferViewModel
{
ID = transfer.ID,
LoginID = transfer.LoginID,
Date_Of_Transfer = transfer.Date_Of_Transfer,
No_Of_Sku = transfer.No_Of_SKU,
FromLocationName=transfer.Location,
ToLocation=transfer.ToLocation,
}).AsQueryable();
return StockList;
}
解决方案
如果TABLE1
被命名Locations
,您可能希望在以 开头的行之后添加以下行join transfer in
:
join fromLocation in context.Locations on transfer.Location equals fromLocation.LocationID
join toLocation in context.Locations on transfer.Location equals toLocation.LocationID
然后在你的选择语句中,你会想要:
FromLocationName = fromLocation.Location_Name,
ToLocation = toLocation.Location_Name,
推荐阅读
- java - 由于注入持久性依赖项失败,无法在 Spring Boot 应用程序上运行测试
- python - python中的FFT频谱图
- mysql - SQL如何从多个表中获取数据
- php - 我想将数组结果中的一篇文章放在其他来自 boleen 的文章之前
- python - Networkx 节点标签的顺序错误
- curl - cURL 错误“无法连接到主机”(7) 的原因是否会出现在请求客户端?
- reactjs - 如何显示在同一页面中单击链接的表格?
- git - CircleCI 2.0 删除合并的 Git 分支
- git - 如何扩展 git 合并驱动程序?
- java - 有没有一种优雅的方式来转换地图
> 到稀疏地图
?