在Windows 10 UWP應用程序,我使用的是實體框架的核心1.1本地SQLite數據庫和它的正常工作,現在,除了這一點:的Windows 10 UWP - 實體核心SQLite的:包括查詢錯誤
我試圖使用簡單的linq查詢將相關對象包含到我的用戶對象中。我測試了一些查詢,但包含方法和選擇限制的lambda表達式不起作用。
代碼示例:
public async Task<IUser> GetAsync(Guid id)
{
// Working, but useless
var user = await this.DbSet.Include(u => u.ProfileNavigation).FirstOrDefaultAsync();
// Returns null
var user1 = await this.DbSet.Include(u => u.ProfileNavigation).FirstOrDefaultAsync(u => u.IdGuid == id);
// Returns null
var user2 = await this.DbSet.Where(u => u.IdGuid == id).Include(u => u.ProfileNavigation).FirstOrDefaultAsync();
// Returns null linked object
User user3 = await this.DbSet.SingleOrDefaultAsync(u => u.IdGuid == id);
await this.Context.Entry(user3).Reference(p => p.ProfileNavigation).LoadAsync();
// Result valid but painfull
User res = await (from u in this.DbSet
join p in this.Context.Set<Profile>() on u.ProfileGuid equals p.IdGuid
where u.IdGuid == id
select new User
{
Id = u.Id,
ProfileId = u.ProfileId,
ManagerUserId = u.ManagerUserId,
RegionId = u.RegionId,
Number = u.Number,
Password = u.Password,
FirstName = u.FirstName,
LastName = u.LastName,
Email = u.Email,
HideOnBoardAppConstr = u.HideOnBoardAppConstr,
ModifiedByUserId = u.ModifiedByUserId,
ProfileNavigation = p
}).FirstOrDefaultAsync();
return res;
}
有誰有這個問題,並解決它?
在此先感謝。