Как связать клиента и платежные реквизиты - PullRequest
2 голосов
/ 23 февраля 2010

У меня есть запрос, связанный с отношениями между объектами.

Сценарий:

Реквизиты платежа - а. Кредитная карта б. Сберегательный счет с. Проверка

Теперь клиент должен иметь любую из перечисленных выше деталей платежа перед покупкой любого продукта Как связать детали оплаты с клиентом.

Может ли кто-нибудь объяснить с примером ...

Заранее спасибо.

Ответы [ 3 ]

3 голосов
/ 23 февраля 2010
public interface IPaymentType 
{
  bool Pay(double amount);
}

public class CreditCardPType : IPaymentType
{
  double limit;
  // implement Pay()
}    
public class Cheque: IPaymentType
{
  int accountNumber;
  // implement Pay()
} 

public class Customer
{
    public IPaymentType paymentType { get; set; }
}


Customer customer = new Customer();
customer.paymentType = new CreditCardPType();
0 голосов
/ 23 февраля 2010

Добавьте свойство \ поле "Платежная информация" в свой объект клиента. Это будет режим оплаты по умолчанию, когда клиент покупает продукт.

0 голосов
/ 23 февраля 2010

Не уверен, что я правильно понял ваш вопрос. Возможно, у вас может быть класс Customer , имеющий атрибут "modeOfPayment", и это может быть любой из возможных вариантов. Инициализируйте этот атрибут в конструкторе класса Customer .

В качестве альтернативы может быть лучше сохранить детали платежа в классе, таком как «Заказ». Покупатель может выбрать оплату заказа с помощью кредитной карты (скажем), а некоторые могут оплатить заказ другими способами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...