私は少し困惑しました、そして私はSOコミュニティがこれで私を助けることができることを望んでいます。
私は現在、構成可能なルールに基づく注文割引のカスタムロジックを作成している状況にあります。最も単純な形式では、次の表があります。
注文
OrderID int
OrderDiscount
OrderID int
DiscountID int
割引
DiscountID int
Entity Frameworkを使用しています(ただし、この質問はどのデータモデルにも当てはまります)。私のオプションは単純なように感じますが、どちらにも欠点があります。
- SQLOrderテーブルに「Discount」列を追加します。欠点:注文が更新されるたびに、割引を再計算してこの列を更新することを忘れないでください。これにより、データの不整合が発生する可能性がありますが、パフォーマンスは向上します。割引額を上書きすることもできます。
- コード内の注文データモデルに「割引」プロパティを追加します。欠点:このプロパティにアクセスするたびに計算が必要ですが、常に正確です。
どのルートに行くべきですか、そしてその理由は何ですか?