【发布时间】:2011-12-20 23:52:23
【问题描述】:
我有一个定义命令的表,一个命令有一个参数列表,一个参数必须有一个命令。这意味着 parameterMap 中的引用:
Id(x => x.Id).Column("GUID_PARAMETER").GeneratedBy.Assigned();
References(x => x.Command).Column("GUID_COMMAND").Cascade.All();
Table("MST_PARAMETER");
和一个 HasMany 命令来填充列表:
Id(x => x.Id).Column("GUID_COMMAND").GeneratedBy.Assigned();
HasMany<ParameterEntity>(x => x.ParameterList)
.Table("MST_PARAMETER")
.KeyColumn("GUID_PARAMETER")
.Inverse()
.Cascade.All();
Table("MST_COMMAND");
然后,当尝试测试命令是否具有参数列表时,我总是收到错误消息,说我无法使用空命令插入参数。
据我所知,实现这一目标的正确方法是在测试命令映射时使用这样的调用
new PersistenceSpecification<CommandEntity>(_session)
.CheckProperty(c => c.Id, Guid.NewGuid())
.CheckList(c => c.ParameterList, FixtureUtils.GetDefaultParameterListFromCommand(), (command, parameter) => command.AddParameter(parameter))
这可以测试吗?
【问题讨论】:
标签: c# database nhibernate testing fluent-nhibernate