我仍处于规划具有多功能交易系统的应用程序的早期阶段,该系统将考虑多种交易类型和支付处理程序。
假设我有以下基类:
public class Transaction {
public int Id { get; set; }
public TransactionTypes Type { get; set; }
public PaymentHandlers PaymentHandler { get; set; }
public decimal Amount { get; set; }
}
其中 TransactionTypes 是一个确定交易类型的枚举。以下是交易类型为产品时的示例:
public class ProductTransaction : Transaction {
public Address DeliveryAddress { get; set; }
}
PaymentHandlers 是一个枚举,用于确定交易的支付处理程序。以下是付款处理程序为 PayPal 时的示例:
public class TransactionPayPal : Transaction {
public string AccountName { get; set; }
}
但是我不确定我是否完全正确,因为我有两个不同的类,它们从具有不同鉴别器的 Transaction 继承。我假设有某种规则反对这一点,因为我可以想象这会在稍后插入和获取数据时引起问题。
我很感激有关如何实现这一目标的建议。谢谢