0
我正在嘗試編寫一個EF6中使用的模型,其中包含一個我希望在C#(而不是SQL)中計算的屬性。我的模型是這樣的:在EF6上消除計算屬性代碼從數據庫中的第一個DbSet
public class UploadRequestWorkingHours : UploadRequest
{
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public int WorkingHoursSinceResponseDate
{
get { return DateUtils.WorkingHoursSince(ResponseDate); }
private set { }
}
}
的UploadRequest
類包含的細節,這個派生類中引入了應該由LINQ/EF /何人當模型被序列來計算的屬性。
不幸的是,這個屬性 - WorkingHoursSinceResponseDate
- 正在將它放到數據庫中,儘管我已將該類標記爲Computed
。我也試過None
。我通過閱讀EF文檔瞭解到DatabaseGeneratedOption
仍然會在數據庫中創建一列;我一直在關注有很多選票的帖子such as this one,但實際上,我不認爲這是解決方案。
如何防止模型中的計算屬性進入數據庫? Another post建議在創建的遷移文件中創建遷移並註釋該字段,但這非常臭,而且我無法逃避這一點!