0

我仍处于规划具有多功能交易系统的应用程序的早期阶段,该系统将考虑多种交易类型和支付处理程序。

假设我有以下基类:

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 继承。我假设有某种规则反对这一点,因为我可以想象这会在稍后插入和获取数据时引起问题。

我很感激有关如何实现这一目标的建议。谢谢

4

1 回答 1

0

根据 Steven 的建议,我重构了我的设计。现在我有一个 TransactionHandler 类型,它将处理程序信息与事务分开。最后,我在这两个类之间添加了一个连接(数据库中的外键)。

于 2012-12-18T13:22:52.663 回答