如何通过Invoke方法加载具有依赖项的对象?
E.g。我有一个DTO:
[DataContract]
公共课MyDTO
{
[DataMember] public int Id {get; set;}
[数据成员] public string SomeField {get; set;}
[DataMember] [Include] public IList< SomeEntity>依赖关系{get; set} }
并调用方法:
[调用]
公开MyDTO GetDTO()
{
返回新的MyDTO() { ID = 1, SomeFields = “测试”, 依赖关系=新列表< SomeEntity>(){new SomeEntity()}; }
在这种情况下,在客户端,我可以将MyDTO实例附加到主域上下文,但不加载依赖项。我不想创建新的方法来单独获取Dependencies。如果创建查询方法而不是调用我应该使用IEnumerable但我只需要一个实例。解决这个问题的最佳方法是什么?感谢。
答案 0 :(得分:0)
如果创建查询方法而是调用 我应该使用IEnumerable,但我 只需要一个实例。是什么 解决这个问题的最佳方法?感谢。
当你查询你的上下文并要求第一条记录时,通过LINQ(如果它是你正在查询的PK,那么只有一条或者没有):
Context.Load(Context.GeEmployeeQuery().Where(a => a.EmployeeId == employeeId),
LoadBehavior.RefreshCurrent,
x =>
{
Employee = x.Entities.FirstOrDefault();
}, null);