我正在创建身份用户和游戏表之间的连接表。该表称为UserGame,并具有两个外键(UserID,GameID)和一个用于存储分数的附加字段。ASP中的连接表代码第一种方法
public class UserGame
{
[Key]
public string ApplicationUserID { get; set; }
public virtual ApplicationUser ApplicationUser { get; set; }
public int GameID { get; set; }
public virtual Game Game { get; set; }
public int Score { get; set; }
}
我的困惑在于创建一个新的UserGame记录。我如何去做这件事,我的方法是否正确?
更新(这工作):
[HttpPost]
public ActionResult SubmitScore(int gameID, int score)
{
var playerRecord = new UserGame();
playerRecord.ApplicationUserID = User.Identity.GetUserId();
playerRecord.GameID = gameID;
playerRecord.Score = score;
return Json(new { success = true });
}
感谢您的帮助!在添加新纪录上仍然有点失落。我选择直接使用我的UserGame类。我在我的控制器中创建了一个新的UserGame对象。我可以分配游戏ID和分数。我想知道这种方法是否正确:检索通过User.Identity.GetUserID()登录的当前用户并将其设置为ApplicationuserID字段。 –
已更新问题以备份此评论,欢呼 –
是的,这是一种方式,要添加新的UserGame实体,将其添加到您的上下文中。你应该把它当作你的DbContext中的DbSet吧? – dbraillon