VB 2008 .NET 3.5
Предположим, у нас есть два класса, Order и OrderItem, которые представляют некоторый тип системы онлайн-заказов. OrderItem представляет отдельную позицию в заказе. Один заказ может содержать несколько элементов OrderItem в форме списка (элемента OrderItem).
Public Class Order
Public Property MyOrderItems() as List(of OrderItem)
End Property
End Class
Имеет смысл, что OrderItem не должен существовать без Order. Другими словами, класс OrderItem не должен иметь возможность создавать его самостоятельно, он должен зависеть от класса Order, который будет содержать его и создавать его экземпляр. Однако OrderItem должен быть открытым по объему, чтобы его свойства были доступны другим объектам. Итак, требования для OrderItem:
Может быть создан только классом Order.
Должен быть общедоступным, чтобы любой другой объект мог получить доступ к его свойствам / методам через объект Order. например Order.OrderItem (0) .ProductID.
OrderItem должен иметь возможность передаваться другим подпрограммам / функциям, которые будут работать с ним.
Как мне достичь этих целей? Есть ли лучший подход?