Преобразование типа данных (десятичное в ulong) в Entity Framework с использованием подхода базы данных в первую очередь - PullRequest
0 голосов
/ 29 октября 2018

Я использую Entity Framework для возврата / отображения данных в службе Odata.

Поскольку концепция ULong не существует в SQL Server, я храню этот столбец как decimal(20,0) на уровне БД, но мне нужно преобразовать его в ulong, когда дело доходит до уровня обслуживания.

Если знаете, что это можно сделать в Entity Framework Core, но мне было интересно, есть ли способ сделать это в EF 6?

Я объявляю свои сущности в DbContext следующим образом:

public class ListingsContext : DbContext
{
    // Empty Constructor and base class reference to context defined in Web.Config
    public ListingsContext() : base($"name={ContextName}") {}

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        Database.SetInitializer<ListingsContext>(null);

        modelBuilder.Entity<Property>().Property(p => p.Appliances).DoSomeTypeOfConversionHere?

        base.OnModelCreating(modelBuilder);
    }

    public DbSet<Property> Property { get; set; }
}
...