私はExpense
と呼ばれるクラスを持っているとしましょう。タンク関連費用、修理費、航空券など、さまざまな種類の自動車関連費用を追加できます。費用の一部のプロパティは、費用、日付などのすべてのタイプで同じですが、いくつかの違いがあります。例えば:私は私の車に燃料を供給したとき、私は完全にタンクを満たしたかどうかのような情報を保存したい。しかし、修理費を節約するときには、他の情報を保存したい。柔軟なプロパティのメカニズム
問題は - どのように虚弱なプロパティのメカニズムを作成するのですか?
私が思いついたのは、2つのテーブル:expenses
とexpenses_properties
です。 expenses
表では、私はすべての基本的な、一般的なデータを保存でき、expenses_properties
は構造以下のだろう。
| Id | PropertyName | PropertyValue | ExpenseId
| 1 | IsFull | "true" | 1
| 2 | Stuff | "2016-10-02" | 1
問題があり、PropertyValue
列に私は例えばnvarchar
のように、特定のタイプを使用しなければならないでしょう。この場合、これらの値を正しくソートすることはできません(たとえば日付別)。それとも、私はそうだろうか?
私はEntity Framework Code Firstアプローチを使用してこれを行うより良い方法があると思います。
* Entity Attribute Value *の公用語を知っていれば、さらに調査することができます。私はそれがあなたを二度考えさせるだろうと確信しています。 –
@Gert、ありがとう!研究は本当に私を2回考えさせました! –