Sam*_*Sam 7 c# linq wpf entity-framework
我试图第一次使用导航属性而不是连接.我无法通过左外连接来完成通常情况下的工作.在下面的示例中,我只返回外键为非null的结果.我需要回复所有结果.我错过了什么?
public class User
{
[Key]
public int UserID {get;set;}
public String Name {get;set;}
}
public class Shipment
{
[Key]
public int ShipmentID {get;set;}
public int? SignedForByID {get;set;}
[ForeignKey("SignedForByID")]
public virtual User SignedForBy{get;set;}
}
Run Code Online (Sandbox Code Playgroud)
导航属性映射:
Shipment.HasOptional(x=> x.SignedForBy).WithMany()
.HasForeignKey(y=> y.SignedForByID).WillCascadeOnDelete(false);
Run Code Online (Sandbox Code Playgroud)
查询:
var data = (from s in context.Set<Shipment>()
select new {
ShipmentID = s.ShipmentID,
SignedForBy = s.SignedForBy
});
Run Code Online (Sandbox Code Playgroud)
此示例中未显示该问题。映射由辅助类生成。在某些情况下,帮助程序类错误地使用 .HasRequired() 方法而不是 .HasOptional() 映射导航属性。更正映射类已解决该问题。
| 归档时间: |
|
| 查看次数: |
924 次 |
| 最近记录: |