Брюлик
Дата: 29.05.2006 10:59:52
Всем привет
У меня такои вопрос, допустим я имею две таблицы в базе данных
----------------------------
create table Orders (ordid int not null primary key, ordname varchar(20))
create table Products (prdid int not null primary key, ord int not null references Orders(ordid), prdname varchar(200))
------------------------------
Teперь я строю два класса
--------------
class Orders
private m_orderid as integer
private m_ordname as string
end class
class products
private m_prdid as integer
private m_ord as integer
private m_prdname as string
end class
----------------------
Теперь ВОПРОС. Нужно ли было вносить (m_ord)как мембер в Products классе
ведь я могу обратиться к Orders напрямую и соедениться с products
Как правилно с точки зрения ОО создать класс Products
Какие преимушество дает мне DATATable ? Нужно ли это здесь использовать
Спасибо
Брюлик
Дата: 30.05.2006 07:46:40
Спасибо,Саша.
Связь между таблицами в моем случае one-to-one
Теперь ,как написать функцию ,которая по ordid выдает продукт с учетом вашего предложения
sasha1
Дата: 30.05.2006 14:17:51
например, в класс Заказов добавляем метод
Class Orders
Private m_orderid As Integer
Private m_ordname As String
Public Shared Function GetOrder(ByVal m_orderid As Integer) As Orders
' получаем Order по m_orderid - откуда угодно - из базы, XML, etc
End Function
End Class
и при работе с продуктом имеем (Источник_Данных - опять же все что угодно)
Dim Product as new Propduct
Product.m_prdid = Источник_Данных.m_prdid
Product.m_prdname= Источник_Данных.m_prdname
Product.m_ord = Orders.GetOrder(Источник_Данных.m_prdname)