【发布时间】:2015-07-07 17:12:42
【问题描述】:
我们目前正在尝试将 SQLite 扩展 (PCL) 作为 ORM。
我们想知道,如果在实体中正确配置了子元素,映射是否应该构建一个带有 INNER JOIN 的 SELECT?
public class Project
{
[PrimaryKey]
public long Id { get; set; }
[ForeignKey(typeof(EnterpriseClient))]
public long EnterpriseClientId { get; set; }
[ManyToOne]
public EnterpriseClient EnterpriseClient { get; set; }
[OneToMany(CascadeOperations = CascadeOperation.All)]
public List<WorkOrderHead> WorkOrderHeads { get; set; }
}
如果我们使用 GetAllWithChildren 获取所有项目:
var x = _db.GetAllWithChildren<Project>(p => true);
我们的结果是对每个子项 (EnterpriseClient) 进行多项选择,我们希望它能够在一次选择和连接中一次收集所有数据。
我们的配置是错误的还是应该是这样的?
【问题讨论】:
标签: c# orm xamarin.android sqlite-net sqlite-net-extensions