我正在构建一个应用程序,在那里我尝试交友系统。
现在,我用了两张桌子来解决这个问题。第一:默认的AspNetUsers存储用户信息。
第二:“朋友表”如下:
public class AspNetFriends
{
public int ID { get; set; }
public string friendFrom { get; set; }
public string friendTo { get; set; }
public bool isConfirmed { get; set; }
}
在这个表中,"friendFrom“和"friendTo”都是字符串类型,并接收注册用户ID。
我想要实现的是,当我在视图中显示这个表时,我想显示"friendFrom“或"friendTo”列中相同friendFrom的用户名。
发布于 2016-11-10 10:48:37
您需要按以下方式更改您的类(我没有测试这个):
asp.net核心的默认应用程序用户
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
namespace project.Models
{
// Add profile data for application users by adding properties to the ApplicationUser class
public class ApplicationUser : IdentityUser
{
}
}
模型
public class AspNetFriends
{
public int ID { get; set; }
public bool isConfirmed { get; set; }
public virtual ApplicationUser friendFrom { get; set; }
public virtual ApplicationUser friendTo { get; set; }
}
现在您可以访问aspnet用户的getter和setter了。
控制器
public async Task<IActionResult> Details(int id)
{
var query = from m in _dbContext.AspNetFriends
join ff in _dbContext.Users on
new { m.friendFrom.Id } equals new { Id = cu.Id }
join ft in _dbContext.Users on
new { m.friendTo.Id } equals new { Id = cu.Id }
where m.ID == id
select m;
return View(query.Single());
}
视图
@model project.AspNetFriends
<p>
@model.friendFrom.UserName
</P>
@item.CreationUser.UserName
https://stackoverflow.com/questions/40525574
复制相似问题