开发者

how do I save to a database record with the primary key value = 0?

开发者 https://www.devze.com 2023-03-14 12:58 出处:网络
I have a client\'s database that I am accessing with nHibernate.In one table, they have a primary key which auto-increments starting at 0.I cannot have the client\'s database changed to a 1 based auto

I have a client's database that I am accessing with nHibernate. In one table, they have a primary key which auto-increments starting at 0. I cannot have the client's database changed to a 1 based auto-increment.

When I attempt to save a child record in a table with a foreign key back to this table I receive the following error: "not-null property references a null or transient value". The problem is only found when I save the child of the record that has the 0 primary key value, al开发者_运维百科l other records work fine.

This is the generator for the parent table

and the foreign key relationship map:

Question: how do I save to a database record with the primary key value = 0?


i cant see your mappings but i would try

public ParentMap()
{
    Id(x => x.Id).GeneratedBy.Increment().UnsavedValue(-1);
}

and

public Parent()
{
    Id = -1;
}
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号