[英]Entity Framework Fluent API map DbSet<> value to custom object in table
標題可能有點混亂。 但是問題是:
由於數據庫的優化,我們選擇為數據庫設計ERD,這在某些方面與類圖有所不同。
好的,問題是; 如何將DailyLog數據庫實體映射到DailyLog C#域類。 由於性能的優化,我們選擇將HeartRate作為CLOB存儲在數據庫中。 在域類中,將對象包含在特定類類型的列表中會更容易。
如何以一種干凈利落的方式完成這項工作? 我真的不知道如何將這種數據庫實體映射到域類。
計划是這樣存儲心率的:字符串:“ 07:00:01,50; 07:00:02,52”;
我已經完成了DTO的實驗,但是隨后我必須在Domain類和Entity Framework之間創建一個全新的DTO層。 而且我認為有一種更清潔的方法可以做到這一點。 但是我不知道如何。
您可以使用EF Fluent API。 檢查此鏈接以獲取詳細信息。 在您的情況下,映射應如下所示:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<DailyLog>().Map(m =>
{
m.Properties(p => new { p.Id, p.Date});
m.ToTable("DAILYLOG");
});
modelBuilder.Entity<HeartRatePattern>().ToTable("DAILYLOG").Property(x => string.Join(";",x.HeartRate)).HasColumnType("varchar");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.