Files
Govor/Govor.Data/Configurations/UserSessionConfiguration.cs
T
Artemy cc2921d257 Updeted Session Model and Session Opener Service
renamed RefreshToken in model to RefreshTokenHash - now we have a hash of token, not a token
2025-12-14 14:03:18 +07:00

31 lines
937 B
C#

using Govor.Core.Models;
using Govor.Core.Models.Users;
using Govor.Core.Models.Users.Crypto;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace Govor.Data.Configurations;
public class UserSessionConfiguration : IEntityTypeConfiguration<UserSession>
{
public void Configure(EntityTypeBuilder<UserSession> builder)
{
builder.HasKey(us => us.Id);
builder.Property(us => us.RefreshTokenHash)
.IsRequired();
builder.Property(us => us.DeviceInfo)
.HasMaxLength(256);
builder.HasOne<User>()
.WithMany()
.HasForeignKey(us => us.UserId)
.OnDelete(DeleteBehavior.Cascade);
builder.HasOne(e => e.CryptoSession)
.WithOne(e => e.UserSession)
.HasForeignKey<UserCryptoSession>(e => e.UserSessionId)
.OnDelete(DeleteBehavior.Cascade);
}
}