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是一個枚舉,它確定交易的付款處理程序。下面就是一個例子,當支付處理程序是貝寶:
public class TransactionPayPal : Transaction {
public string AccountName { get; set; }
}
但是我不知道我有這非常正確,因爲我有從繼承的事務用不同的鑑別兩個不同的類。我認爲有一些規則反對這個,因爲我可以想象這會在稍後插入和獲取數據時引發問題。
我會很感激這應該如何實現的建議。謝謝
爲什麼'java'標籤? – SJuan76
您正在建立一個給定類型的邏輯('Transaction'),以支持不同的類型? ('PaymentHandlers'枚舉)你應該重新思考你的設計並使用正確的多態性來代替。 –
您是否首先檢查沒有開源項目這樣做? –