gpt4 book ai didi

c# - 无法插入 select SCOPE_IDENTITY() 流利的 nhibernate 一对多

转载 作者:行者123 更新时间:2023-11-30 20:48:06 24 4
gpt4 key购买 nike

我有一个错误异常:“无法插入选择 SCOPE_IDENTITY()”。经过几个小时的谷歌搜索后,我发现我的映射文件中有一个错误。我尝试了所有可能的解决方案,但错误不断出现。
我的映射文件:

public sealed class EmployeeMap : ClassMap<Employee>
{
public EmployeeMap()
{
Table("dbo.Employee");

Id(x => x.Id).Column("EmployeeId");
Map(x => x.Name);
Map(x => x.Job);
HasMany(x => x.Phones).KeyColumn("EmployeeId").Table("dbo.Phone")
.Inverse()
.Cascade.All();
}
}
public sealed class PhoneMap : ClassMap<Phone>
{
public PhoneMap()
{
Table("dbo.Phone");
Id(x => x.Id).Column("PhoneId");
Map(x => x.PhoneNumber);
Map(x => x.PhoneType);
Map(x => x.EmployeeId);
References(x => x.Employee).Column("EmployeeId").Not.Nullable();
}
}

问题出现在Session.SaveOrUpdate()中。
我哪里做错了?

最佳答案

似乎没有人回答我的问题......
不需要。我自己找到了答案:

public sealed class EmployeeMap : ClassMap<Employee>
{
public EmployeeMap()
{
Table("dbo.Employee");

Id(x => x.Id).Column("EmployeeId");
Map(x => x.Name);
Map(x => x.Job);
HasMany(x => x.Phones).KeyColumn("EmployeeId").Table("dbo.Phone").Inverse().Cascade.AllDeleteOrphan();
}
}
public sealed class PhoneMap : ClassMap<Phone>
{
public PhoneMap()
{
Table("dbo.Phone");
Id(x => x.Id).Column("PhoneId");
Map(x => x.PhoneNumber);
Map(x => x.PhoneType);
Map(x => x.EmployeeId);
References(x => x.Employee, "EmployeeId");
}
}

关于c# - 无法插入 select SCOPE_IDENTITY() 流利的 nhibernate 一对多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25096975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com