比方說,我有一個類叫Expense
。我可以添加各種類型的汽車相關費用 - 坦克費用,修理費用,車票等。費用的某些屬性對於所有類型(如成本,日期等)都是相同的,但是存在一些差異。例如:當我爲我的汽車加油時,我想保存信息,就像我完全填滿了我的坦克或不。但是,當我正在保存修復時,我想保存一些其他信息。靈活的財產機制
問題是 - 如何創建某種靈活的屬性機制?
我想出的是有兩個表:expenses
和expenses_properties
。在expenses
表,我可以存儲所有基本的,常用的數據和expenses_properties
將有以下結構:
| Id | PropertyName | PropertyValue | ExpenseId
| 1 | IsFull | "true" | 1
| 2 | Stuff | "2016-10-02" | 1
的問題是,爲PropertyValue
專欄中,我將不得不使用特定類型的,像nvarchar
例如。在這種情況下,我將無法正確排序這些值(例如按日期)?或者,也許我會?
我認爲必須有更好的方式來使用實體框架代碼優先方法來做到這一點。
如果你知道這個* Entity Attribute Value *的官方術語,你可以做一些進一步的研究。我相信這會讓你思考三次。 –
@Gert,非常感謝!研究確實讓我思考了三次! –