1
我修改下面到字典
ALTER TABLE [Plant]
ADD
Name nvarchar(128) NULL,
GLN nvarchar(15) NULL,
LicenceInformation nvarchar(1024) NULL,
MondayStart smallint NULL,
MondayEnd smallint NULL,
TuesdayStart smallint NULL,
TuesdayEnd smallint NULL,
WednesdayStart smallint NULL,
WednesdayEnd smallint NULL,
ThursdayStart smallint NULL,
ThursdayEnd smallint NULL,
FridayStart smallint NULL,
FridayEnd smallint NULL,
SaturdayStart smallint NULL,
SaturdayEnd smallint NULL,
SundayStart smallint NULL,
SundayEnd smallint NULL
所示的表,我想映射到像正常化平表或參考一個特別喜歡:plant.OpeningHours [DayOfWeek.Monday]
所以它有點像一個組件映射...但不完全。
Cache.ReadWrite().Region("ReferenceData");
Table("Plant");
Map(x => x.Code);
Map(x => x.Name);
Map(x => x.Gln);
Map(x => x.LicenceInformation);
Component(x => x.OpeningHours, x =>
{
//??
});
我插入到上述情況。它給我︰NHibernate.MappingException:屬性映射具有錯誤的列數:Namespace.Mvc.Core.Model.Plant.OpeningHours類型:CustomDictionaryType不知道它期望多少列 – Sam
for循環pro pMap.Columns.Count返回1 ... not 14.似乎每個.Column(...)調用都覆蓋最後一個? (var i = 0; i <7; i ++) – Sam
將其更改爲: (var i = 0; i <7; i ++) { var day =(DayOfWeek)((i + 6)%7)propMap.Columns.Add(day +「Start」);propMap.Columns.Add(day +「Duration」); } – Sam