繁体   English   中英

从中的相关表创建列表,并将其设置为Devexpress WPF中的DataGrid

[英]Create list from related tables in and set it as DataGrid in Devexpress WPF

我在用:

Entityramework 6代码优先Devexpress WPF

DBContext:

    public class Transport
    {
    [Key]
    public int TransportID {get; set;}
    public string Model { get; set; }
    public string Brand { get; set; }
    }

    public class Owner
    {
    [Key]
    public int OwnerID {get; set;}
    public int Name {get; set;}
    }

    public class TransportOwner
    {
    [Key]
    public int TransportOwnerID {get; set;}
    public int TransportID {get; set;}

    [ForeignKey("TransportID")]
    public virtual Transport Transport { get; set; }
    [ForeignKey("OwnerID")]
    public virtual Owner Owner { get; set; }
    }

    public virtual DbSet<Transport> Transports { get; set; }
    public virtual DbSet<Owner> Owners { get; set; }
    public virtual DbSet<TransportOwner> TransportOwners { get; set; }

我创建了列表:List TransportOwnerList

我可以传递给WPF的最终名单女巫是什么?

var result = dbContext.TransportOwners.AsQueryable();

我还需要首先通过从另一个过滤列表中选择的项目获得的TransportID巫婆值来过滤数据

result = result.Where(tr => tr.TransportID.Equals(SelectedItem.TransportID));

那么如何格式化Transpot和Owners中的列表并将其设置为dataGrid itemSource?

我需要以下数据:TransportOwnerID,OwnerID,TransportID,ModelName,BrandName

TransportOwnerList = ... ?

您可以投影所需的字段:

var TransportOwnerList = result.Select(t => new 
                            {
                               t.TransportOwnerID,
                               t.OwnerID,
                               t.TransportID,
                               ModelName = t.Transport.Model,
                               BrandName = t.Transport.Brand,
                               ... // other fields
                            }).ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM