جدول AspNetUserRoles یک جدول چند به چند هست و در صورت اضافه کردن یک فیلد به این جدول از حالت چند به چند بیرون رفته و تبدیل به رابطه یک به چند میشود و اینکار صحیح نیست
برای این روش شما باید با جدول AspNetUsers کار کنید و فیلدهای تاریخ انقضا رو به این جدول اضافه کنید و کوئری شما بدینصورت باید باشه که:
کاربرانی با نقش VIP از این تاریخ به بعد lock کنید یا نقش vip کاربر را به یک نقش معمولی تبدیل کنید
برای اضافه کردن فیلد به AspNetUsers ابتدا یک کلاس بسازید مثلا AppUser
public class AppUser : IdentityUser<string,IdentityUserLogin,IdentityUser Role,IdentityUserClaim>
{
//فیلد دلخواه اضافه کردیم public string FriendlyName { get; set; }
}
وذر تنظیمات DbSet ها در کلاس Context مان نیز عنوان جدول در دیتابیس را تغییر می دهیم
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<AppUser>().ToTable("Users")
}
;