برای Customize کردن جداول Identity در Asp.Net Core 7 من ابتدا یک کلاس برای نقش و یک کلاس برای یوزر ایجاد کردم
using System;
using Microsoft.AspNetCore.Identity;
namespace MyWeb.Models
{
public class ApplicationRole : IdentityRole
{
public string Description { get; set; }
}
}
using System;
using Microsoft.AspNetCore.Identity;
namespace MyWeb.Models
{
public class ApplicationUser : IdentityUser
{
public string CustomField { get; set; }
}
}
و سپس آن را در کلاس dbContext به شکل زیر تعریف کردم
public class ApplicationDbContext : IdentityDbContext<ApplicationUser, ApplicationRole, string>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
}
}
و بعد از آن در Program نیز آن را به Identity اضافه کردم
//program class
builder.Services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(connectionString));
builder.Services.AddDatabaseDeveloperPageExceptionFilter();
builder.Services.AddIdentity<ApplicationUser, ApplicationRole>().AddEntityFrameworkStores<ApplicationDbContext>().AddDefaultTokenProviders();
...
app.UseRouting();
app.UseAuthorization();
app.MapRazorPages();
app.Run();
رشته اتصال رو هم در appsettings.json مطابق کد زیر تنظیم کردم
{
"ConnectionStrings": {
"DefaultConnection": "Server=.;Database=MyWebDB;Trusted_Connection=True;MultipleActiveResultSets=true;TrustServerCertificate=True"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
حال با اجرای سایت خطای زیر در مرورگر نمایش داده می شود.
توی کلاس Program.cs باید از میان افزار UseAuthentication هم استفاده کنید.
app.UseAuthentication();
app.UseAuthorization();
ممنون.
من این رو به برنامه اضافه و تست کردم اما باز هم همون خطا رو میده
پروژه شما رو دانلود کردم و تست کردم. در پوشه Shared یک پارشیال ویو به نام LoginPartial.cshtml وجود داره که سه خط کد زیر داخل اون هست.
@using Microsoft.AspNetCore.Identity
@inject SignInManager<IdentityUser> SignInManager
@inject UserManager<IdentityUser> UserManager
اشکال از این 3 خط کد هست. کلا بهتره محتویات این پارشیال ویو (که فکر کنم به طور پیش فرض وجود داشته در پروژه شما) رو پاک کنید.
ممنون آقای بحرانی فرد من این کار را انجام دادم و مشکل حل اما Login و Register در بالای صفحه حذف شد که من مجدد اون قسمتی که حذف کردم برگردوندم و به شکل زیر تغییر دادم
@using Microsoft.AspNetCore.Identity
@using MyWebApp.Models
@inject SignInManager<ApplicationUser> SignInManager
@inject UserManager<ApplicationUser> UserManager
با این کار هم مشکل حل شد ام باز هم صفحه Login و Register کار نمیکنه
آیا راهی هست که این دو صفحه هم کار کنه یا باید مجدد این دو صفحه رو جدید بسازم؟
مشکل باز نشدن صفحه Login و Register با افزودن Default UI به AddIdentity مطابق کد زیر طور کامل حل شد.
builder.Services.AddIdentity<ApplicationUser, ApplicationRole>().AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders().AddDefaultUI();
تاریخ :
1403/09/22
- ساعت :
05:58:00 PM
- بازدید :
34
- پاسخ :
0
|
تاریخ :
1403/09/06
- ساعت :
09:51:00 PM
- بازدید :
161
- پاسخ :
2
|
تاریخ :
1400/07/17
- ساعت :
10:39:00 PM
- بازدید :
2363
- پاسخ :
0
|
تاریخ :
1403/09/05
- ساعت :
06:32:00 PM
- بازدید :
103
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
155
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
186
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1104
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
510
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1403
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4847
- پاسخ :
1
|
تاریخ :
1403/09/22
- ساعت :
05:58:00 PM
- بازدید :
34
- پاسخ :
0
|
تاریخ :
1403/09/06
- ساعت :
09:51:00 PM
- بازدید :
161
- پاسخ :
2
|
تاریخ :
1400/07/17
- ساعت :
10:39:00 PM
- بازدید :
2363
- پاسخ :
0
|
تاریخ :
1403/09/05
- ساعت :
06:32:00 PM
- بازدید :
103
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2062
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
155
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
186
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1104
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
510
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
968
- پاسخ :
1
|