1

にフィールド/列を追加することはできますwebpages_Membershipか?

[Table("webpages_Membership")]
public class Membership
{
public Membership()
{
    Roles = new List<Role>();
    OAuthMemberships = new List<OAuthMembership>();
}

[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
public int UserId { get; set; }
public DateTime? CreateDate { get; set; }
[StringLength(128)]
public string ConfirmationToken { get; set; }
public bool? IsConfirmed { get; set; }
public DateTime? LastPasswordFailureDate { get; set; }
public int PasswordFailuresSinceLastSuccess { get; set; }
[Required, StringLength(128)]
public string Password { get; set; }
public DateTime? PasswordChangedDate { get; set; }
[Required, StringLength(128)]
public string PasswordSalt { get; set; }
[StringLength(128)]
public string PasswordVerificationToken { get; set; }
public DateTime? PasswordVerificationTokenExpirationDate { get; set; }

public ICollection<Role> Roles { get; set; }

[ForeignKey("UserId")]
public ICollection<OAuthMembership> OAuthMemberships { get; set; }
}

LogonCount をフィールド/列として追加したいのですが、このテーブルはmembership providerを作成すると自動的に入力されますCreateUserAndAccount()

LogonCount に の値を与えることには何の影響もないようですCreateUserAndAccount()

4

1 に答える 1

1

特定の userId に関連する情報を追加する標準的な方法は、UserProfileテーブルではなくwebpages_Membershipテーブルです。SimpleMembershipと. _ _ _ _ _UserProfile

LogonCount に値を与えることに何の影響もないようです...

次にUserProfile、メンバーシップ プロバイダーを介してではなく、データベース コンテキストを介してテーブルと情報にアクセスします。メンバーシップ プロバイダーは、コア セットの機能のみにアクセスできるようにするために存在します。

using (MyDbContext db = new MyDbContext())
{
  UserProfile user = db.UserProfiles
    .First(u => u.UserName.ToLower() == model.UserName.ToLower());
  user.LogonCount = 1;
  db.SaveChanges();
}
于 2013-05-18T18:54:16.040 に答える