У меня возникли проблемы с определением правильного синтаксиса для сопоставления отношений «многие ко многим» с FluentNHibernate.Я рассмотрел несколько других вопросов здесь, в SO и других местах, но не видел ничего, в частности, с такой же структурой таблиц.Надеясь, что кто-то, кто знает больше, чем я о FNH, может помочь мне понять это.Вот мои структуры таблиц:
CREATE TABLE [dbo].[WorkItems](
[Id] [bigint] IDENTITY(1,1) NOT NULL,
[CategoryId] [bigint] NOT NULL,
[DateTime] [datetime] NOT NULL,
[Details] [nvarchar](2000) NULL,
[Duration] [int] NOT NULL,
[DurationInterval] [nvarchar](10) NOT NULL,
[Summary] [nvarchar](150) NOT NULL,
[UserId] [bigint] NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
CREATE TABLE [dbo].[Tags](
[Id] [bigint] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
CREATE TABLE [dbo].[TagWorkItems](
[TagId] [bigint] NOT NULL,
[WorkItemId] [bigint] NOT NULL,
CONSTRAINT [TagId_WorkItemId_PK] PRIMARY KEY CLUSTERED
(
[TagId] ASC,
[WorkItemId] ASC
)
TagId и WorkItemId в таблице TagWorkItems являются внешними ключами для родительских таблиц.Это довольно простая настройка таблицы соединений для отношений m2m.Мой класс Tag имеет свойство типа ICollection, а мой класс WorkItem имеет свойство ICollection.Я не могу понять, как настроить сопоставления для этих свойств.Любой совет будет принята с благодарностью.Спасибо.