У меня есть проект в .net core 3.0, состоящий из 3 частей: API, Shared и Blazor.
Я добавил несколько моделей в общий проект и пользовательскую модель:
[Table("user")]
public class User : IdentityUser<Guid>
{
[Required(ErrorMessage = "Firstname is required")]
[StringLength(32, ErrorMessage = "Firstname must be 32 charaters maximum")]
[Column("firstname")]
public string Firstname { get; set; }
[Required(ErrorMessage = "Lastname is required")]
[StringLength(32, ErrorMessage = "Lastname must be 32 charaters maximum")]
[Column("lastname")]
public string Lastname { get; set; }
[Required(ErrorMessage = "Thumbnail link is required")]
[StringLength(512, ErrorMessage = "Thumbnail link must be 512 charaters maximum")]
[Column("thumbnail_link")]
public string ThumbnailLink { get; set; }
[Column("birthday")]
public DateTime Birthday { get; set; }
[Required(ErrorMessage = "CreationDate is required")]
[Column("creation_date")]
public DateTime CreationDate { get; set; }
// [Required(ErrorMessage = "User role is required")]
// [Column("user_role")]
// public UserRole UserRole { get; set; }
[Required(ErrorMessage = "Is a banned user is required")]
[Column("is_banned")]
public IsBanned IsBanned { get; set; }
public ICollection<UserRole> UserRoles { get; set; }
public ICollection<UserProgression> UserProgressions { get; set; }
public ICollection<Playlist> Playlists { get; set; }
// public ICollection<Message> MessagesReceived { get; set; }
// public ICollection<Message> MessagesSended { get; set; }
public ICollection<Rating> Ratings { get; set; }
public ICollection<Course> Courses { get; set; }
public ICollection<SubscriptionHistory> SubscriptionHistories { get; set; }
}
Но когда я запускаю блейзор, я получаю сообщение об ошибке
Cannot find declaration of exported type 'System.Threading.Semaphore' from the assembly 'System.Threading, Version=4.0.11.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
Fatal error in IL Linker
Unhandled Exception: Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'C:\Users\sebastien\.nuget\packages\system.buffers\4.5.0\lib\netstandard2.0\System.Bufers.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' ---> Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'C:\Users\sebastien\.nuget\packages\system.buffers\4.5.0\lib\netstandard2.0\System.Bufers.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'
at Mono.Linker.DirectoryAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters)
at Mono.Linker.AssemblyResolver.Resolve(AssemblyNameReference
name, ReaderParameters parameters)
at Mono.Linker.LinkContext.Resolve(IMetadataScope scope)
--- End of inner exception stack trace ---
at Mono.Linker.LinkContext.Resolve(IMetadataScope scope)
at Mono.Linker.Steps.ResolveFromAssemblyStep.Process()
at Mono.Linker.Steps.BaseStep.Process(LinkContext context)
at Mono.Linker.Pipeline.ProcessStep(LinkContext context, IStep step)
at Mono.Linker.Pipeline.Process(LinkContext context)
at Mono.Linker.Driver.Run(ILogger customLogger)
at Mono.Linker.Driver.Execute(String[] args, ILogger customLogger)
at Mono.Linker.Driver.Main(String[] args)
Так что пользователь наследует от IdentityUser, который является частью:
PackageReference Include = "Microsoft.AspNetCore.Identity.EntityFrameworkCore" Версия= "2.2.0"
Я обнаружил, что Blazor не поддерживает пакет с сущностью Framework.
Так как я могу реализовать Identity? Как я могу делиться моими моделями между моей серверной частью и внешним интерфейсом? Я новичок, и мне очень трудно найти какую-либо информацию по этому вопросу.
Любая помощь приветствуется!
Спасибо