How to specify an auto-incrementing (int) identity

2019-06-25 06:03发布

The title basically says it all... I'm trying to specify an auto-incrementing (int) identity column using Fluent-NHibernate and MySQL. I've tried the following variations...

Id(x => x.ID).GeneratedBy.Native();
Id(x => x.ID).GeneratedBy.Identity();
Id(x => x.ID).GeneratedBy.Increment();

...and tried setting default values on each.

Note: I'm using an int data type and have received errors such as...

"Input string was not in a correct format."

or...

"Field 'ID' does not have a default value'

2条回答
SAY GOODBYE
2楼-- · 2019-06-25 06:17

I'm using

public class User
    {
        public virtual int Id { get; set; }
        public virtual IList<Names> Names { get; set; }
        public virtual IList<Addresses> Addresses { get; set; }
    }

and mapping as Increment and works for me.

Id(x => x.Id).GeneratedBy.Increment();
查看更多
啃猪蹄的小仙女
3楼-- · 2019-06-25 06:35

In MySQL you can create a column and mention its properties as AUTO_INCREMENT and DEFAULT VALUE 1 (or whatever you wish), why don't you use it?

--Cheers

查看更多
登录 后发表回答