【发布时间】:2014-03-11 10:59:58
【问题描述】:
我正在尝试获取当前用户数据行。但是,当我执行这段代码时
MNDataContext _db = new MNDataContext();
var nm = User.Identity.Name;
var id = (int)Membership.GetUser(User.Identity.Name).ProviderUserKey;
var slct = _db.Utilisateurs.Find((int)Membership.GetUser(User.Identity.Name).ProviderUserKey);
我将null 作为var slct 行上的值。这很奇怪,因为调试器表明 nm 和 id 具有正确的值,但最后一个没有获得正确的对象值。
MNDataContext 类
public class MNDataContext: DbContext
{
public DbSet<UtilisateurModel> Utilisateurs { get; set; }
}
Utilisateur 的主键:
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
[Display(Name = "Identifiant")]
public int UserId { get; set; }
请问有什么绝妙的主意吗?
非常感谢!!
【问题讨论】:
-
(int)Membership.GetUser(User.Identity.Name).ProviderUserKey的结果是什么? -
@Ofiris,计算结果为
1。 -
Utilisateurs看起来像什么?它有id属性吗? -
@Ofiris,是的,它作为主键
[Key] [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] [Display(Name = "Identifiant")] public int UserId { get; set; } -
您可能想将该信息添加到您的问题中,请参阅我的回答。
标签: c# linq entity-framework asp.net-mvc-4