asp.net - 通过预先加载获取所有列
问题描述
我创建了一个与关系相关的表,ApplicationUser
当我想使用即时加载时,我无法根据用户身份验证从该表中获取我的搜索库中的所有列。
var UserSites = await _SqldbContext.Users
.Where(x => x.UserName == User.Identity.Name)
.Include(x => x.sites)
.ToListAsync() ;
return Json(UserSites);
但作为回报,我只得到该表的一行,两列
[{"sites":[{"id":1,"userId":"c0e8be95-535c-449c-9aa1-06702cd4c983"
但是我有更多的行,userId
而且在这里我只有两列,但我有两列以上,我不确定这里有什么问题,请帮助我。
解决方案
我认为 ToListAsync() 工作正常,如果您设置断点,您可能会看到您网站上的所有数据,但在这里我认为 Json 没有正确显示它,而不是从您的示例中的用户表开始,我从您建议的表名网站开始(获取该表的所有数据)
var UserSites = await _SqldbContext.sites.Include(x => x.[Name Of User in relation table]).Where(y=>y.[Name Of User in relation table].UserName== User.Identity.Name)
.ToListAsync();
List<sites> siteObject=new List<sites>();
UserSites.ForEach(x =>
{
sites site = new sites() {
// fill property of your class
};
siteObject.Add(site);
});
return Json(siteObject);
我希望这段代码对你有用。
推荐阅读
- java - 如何以角度发布请求?
- python - 带有路线起点和终点位置的 Google ORTools VRPTW
- javascript - 我无法在控制台或终端中查看我的 JSON 对象,但我收到 200 状态代码
- vb.net - 如何在 Visual Basic 中访问多维数组中的对象
- node.js - 有时在 Windows 上正常转换失败并出现错误 1
- android - Android 使用 twitter API 获取附近的推文
- java - 如何用这个创建万花筒照片?
- sql - 将查询结果作为新列插入到您正在查询的表中
- html - 如何将 JSON-LD 标记与 REGEX 匹配?
- command-line - 如何使用盐来测试 jinja 功能?