Как получить строго типизированный Id ...
public sealed class FileUploadId
{
public int Value { get; }
public FileUploadId(int value)
{
Value = value;
}
}
... который используется в моем FileUpload
классе ...
public class FileUpload : EntityBase, IAggregateRoot
{
private FileUpload() { /* Required by EF */ }
public FileUpload(string name, string relativePath, FileUploadType type, string contentType, long? size = null)
{
/* Guard clauses... */
Id = new FileUploadId(0);
/* Other properties... */
}
public FileUploadId Id { get; }
/* Other properties... */
}
... работаяс идентификатором (int
автоинкремент)?
Я пытался ValueGeneratedOnAdd()
в моем TypeConifiguration
, но безуспешно ...
public class FileUploadTypeConfig : IEntityTypeConfiguration<FileUpload>
{
public void Configure(EntityTypeBuilder<FileUpload> builder)
{
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasConversion(x => x.Value, x => new FileUploadId(x)).ValueGeneratedOnAdd();
/* Other configurations... */
}
}
Я знаю, что есть еще один вариант с Алгоритм HiLo . Но я хочу, чтобы это работало с инкрементом int
по умолчанию. Возможно ли это каким-либо образом?