我有一个实体,我想使用 EF Code First 的 Fluent 配置进行映射:
class Transaction
{
int LineItemId { get; set; }
string TranNumber { get; set; }
string TaxLotId { get; set; }
string TradeLeg { get; set; }
public virtual Transaction NewDealTransaction { get; set; }
public virtual ICollection<GvaTransactions> RelatedTransactions { get; set; }
}
编辑 有一个保存此数据的表(为简洁起见,省略了不相关的列)。
CREATE TABLE [dbo].[Transactions] (
[LineItemId] INT IDENTITY (1, 1) NOT NULL,
[TranNumber] VARCHAR (20) NOT NULL,
[TaxLotId] VARCHAR (20) NULL,
[TradeLeg] VARCHAR (20) NULL,
CONSTRAINT [PK_GVATransactions] PRIMARY KEY CLUSTERED ([LineItemID] ASC)
)
LineItemId 是主键。
该RelatedTransactions
关系应表示具有相同 TaxLotId 的所有交易都是相关的事实。
最后NewDealTransaction
是具有相同 TaxLotId 和 `TradeLeg == "NewDeal" 的交易。
如何编写流畅的映射来表示这些关系?
注意:我的偏好不是更改后端,因为这是我继承的现有表设计,它已经有很多数据。