从多个表创建listview

本文关键字:创建 listview | 更新日期: 2023-09-27 17:49:36

我需要从两个(或更多)表(我使用sql server)的listview。我的项目是关于公寓租赁的。

i have a table of Owner:

[OwnerID]     INT        IDENTITY (1, 1)    NOT NULL,
[Name]        NVARCHAR (50) NOT NULL,
[Username]    NVARCHAR (50) NOT NULL,
[Password]    NVARCHAR (50) NOT NULL,
[Phone]       NVARCHAR (50) NOT NULL,
[Mail]        NVARCHAR (50) NOT NULL,
[Description] NVARCHAR (50) NOT NULL,
[Image]       IMAGE         NULL,

我有一张公寓的表格:

[ApartmentID]     INT           NOT NULL,
[Address]         NVARCHAR (50) NOT NULL,
[OwnerID]         INT           NULL,
[AgentID]         INT           NULL,
[apartmentTypeID] INT           NOT NULL,
[Floor]           INT           NOT NULL,
[Rooms]           INT           NOT NULL,
[AgencyFees]      INT           NULL,
[Immediately]     INT           NOT NULL,
[DateOfEntrance]  DATETIME      NULL,
[Price]           INT           NOT NULL,
[Description]     NVARCHAR (50) NOT NULL,
[Image]           IMAGE         NULL,
[CityID]          INT           NOT NULL,

我想在listview中显示表Apartment的数据,但不是字段"ownerID",我想显示来自Owner表的ownerName。我明白我需要在这里使用一个linq…

如果有人能告诉我如何做到这一点,我会很感激的:-)谢谢!

从多个表创建listview

考虑连接这两个表,如检查此查询,

SELECT 
t1.[ApartmentID],
t1.[Address],
t2.[Name],
t1.[AgentID],
t1.[apartmentTypeID],
t1.[Floor],
t1.[Rooms],
t1.[AgencyFees],
t1.[Immediately],
t1.[DateOfEntrance],
t1.[Price],
t1.[Description],
t1.[Image],
t1.[CityID]
FROM
Apartment AS t1 INNER JOIN Owner AS t2
ON t1.[OwnerID]=t2.[OwnerID];

这里是LINQ,

var q = (from t1 in Apartment join t2 in Owner on t1.OwnerID equals t2.OwnerID
 select new { 
    t1.ApartmentID,
    t1.Address,
    t2.Name,
    t1.AgentID,
    t1.apartmentTypeID,
    t1.Floor,
    t1.Rooms,
    t1.AgencyFees,
    t1.Immediately,
    t1.DateOfEntrance,
    t1.Price,
    t1.Description,
    t1.Image,
    t1.CityID
 }).ToList();

希望有帮助,谢谢。