Напишите вашу UploadFile
модель следующим образом:
public class UploadFile
{
public int Id { get; set; }
public string UserId { get; set; }
public byte[] md5 { get; set; }
public string Uri { get; set; }
public string ThumbnialUri { get; set; }
public ApplicationUser ApplicationUser { get; set; } //this user is extend from `IdentityUser`
}
Затем в конфигурации DbConext
.
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<UploadFile>()
.HasOne(uf => uf.ApplicationUser)
.WithMany()
.HasForeignKey(uf => uf.UserId);
}
Теперь запустите новую миграцию!
И измените код метода FileUpload следующим образом:
UploadFile uploadedFile = new UploadFile()
{
md5 = md5Value,
Uri = fileBlob.Uri.ToString(),
UserId = currentUser.Id, // Here set the current logged in UserId
ThumbnialUri = thumbnailBlob.Uri.ToString()
};
_dbContext.uploadFiles.Add(uploadedFile);
_dbContext.SaveChanges();
Примечание. Если вам нужно, чтобы текущее имя вошло в систему UserId
, тогда Вот оно