У меня есть таблица User
и таблица Address
.Они связаны между собой таблицей соединений.Сопоставление для этого прямое, но у меня есть некоторые данные в таблице соединений, которые я хотел бы показать в таблице адресов.
Может быть, есть и лучший способ настроить это, что я 'm открыт для предложений по.
Вот структура таблицы.
CREATE TABLE [dbo].[User]
(
[Id] INT NOT NULL IDENTITY PRIMARY KEY,
...
)
CREATE TABLE [dbo].[Address]
(
[Id] INT NOT NULL IDENTITY PRIMARY KEY,
...
)
CREATE TABLE [dbo].[AddressType]
(
[Id] INT NOT NULL IDENTITY PRIMARY KEY,
[Name] NVARCHAR( 10 ) NOT NULL, -- Values: 'Shipping', 'Billing'
...
)
CREATE TABLE [dbo].[UserAddress]
(
[UserId] INT NOT NULL FOREIGN KEY REFERENCES [dbo].[User]( [Id] ),
[AddressId] INT NOT NULL FOREIGN KEY REFERENCES [dbo].[Address]( [Id] ),
[AddressTypeId] INT NOT NULL FOREIGN KEY REFERENCES [dbo].[AddressType]( [Id] ),
...
)
Я хочу иметь список адресов доставки и выставления счетов на объекте пользователя.Как бы я отобразил это?Я использую Fluent NHibernate для отображения.
Я изначально начал с двух таблиц соединения, BillingAddress
и ShippingAddress
, которые были просто соединениями между таблицами User
и Address
.Это бы хорошо работало, но тогда есть 2 таблицы с точно такой же структурой, которые делают то же самое, и это просто не выглядело правильно.