Fluent nhibernate FluentNHibernate有许多语法
我很难找到正确的语法来映射与FluentNHibernate的多对多关系。我已经在某处和其他地方查看了其他几个问题,但没有看到任何具有相同表结构的问题。希望比我更了解FNH的人能帮我解决这个问题。以下是我的表格结构:Fluent nhibernate FluentNHibernate有许多语法,fluent-nhibernate,Fluent Nhibernate,我很难找到正确的语法来映射与FluentNHibernate的多对多关系。我已经在某处和其他地方查看了其他几个问题,但没有看到任何具有相同表结构的问题。希望比我更了解FNH的人能帮我解决这个问题。以下是我的表格结构: CREATE TABLE [dbo].[WorkItems]( [Id] [bigint] IDENTITY(1,1) NOT NULL, [CategoryId] [bigint] NOT NULL, [DateTime] [datetime] NOT N
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
)
TagWorkItems表中的TagId和WorkItemId都是返回父表的外键。对于m2m关系,这是一个非常直接的连接表设置。我的标记类具有ICollection类型的属性,而我的WorkItem类具有ICollection类型的属性。我似乎不知道如何设置这些属性的映射。如有任何建议,将不胜感激。谢谢。这里有一个工作项映射可能会说什么的示例;只读位取决于如何维护关系:
HasManyToMany(x => x.Tags)
.Table("TagWorkItems")
.ParentKeyColumn("WorkItemId")
.ChildKeyColumn("TagId")
.AsSet()
.ReadOnly();
这似乎给了我我所需要的和工作。非常感谢。非常感谢。