Asp.net 通过快速加载获取所有列
我创建了一个与Asp.net 通过快速加载获取所有列,asp.net,sql-server,asp.net-identity,Asp.net,Sql Server,Asp.net Identity,我创建了一个与ApplicationUser相关的表,当我想要获得即时加载时,我无法根据用户身份验证从该表中获取搜索基础上的所有列 var UserSites = await _SqldbContext.Users .Where(x => x.UserName == User.Identity.Name) .Include(x => x.site
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"
但是我有更多的带有这个用户ID的行,而且这里我只有两列,但我有两列以上,我不确定这里出了什么问题,请帮助我。我认为ToListAsync()工作正常,如果你做了断点,你可能会看到你网站上的所有数据,但我认为Json没有正确显示出来,在您的示例中,我不是从用户表开始,而是从您建议的表名站点开始(以获取此表的所有数据)
var UserSites=await\u SqldbContext.sites.Include(x=>x.[关系表中的用户名])。其中(y=>y.[关系表中的用户名]。用户名==User.Identity.Name)
.ToListAsync();
List siteObject=新列表();
UserSites.ForEach(x=>
{
站点站点=新站点(){
//填充类的属性
};
添加(站点);
});
返回Json(siteObject);
我希望这个代码对你有用
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);