Castel.ActiveRecord (или лучше NHibernate) дает вам несколько вариантов генерации первичных ключей, вам следует взглянуть на PrimaryKeyType-Enum.
GUID является самым простым, не требующим ничего, кроме как для создания свойства первичного ключа типа System.Guid и настройки столбца в базе данных. (Я не уверен, какой тип вам нужен в базе данных, я всегда использую VARCHAR / CHAR / и т.д.)
Если вы хотите сохранить используемую в данный момент уинт, я бы предложил использовать HiLo.
[PrimaryKey(Generator=PrimaryKeyType.HiLo)]
public virtual uint Id{get;set;}
В базе данных:
CREATE TABLE hibernate_unique_key( next_hi NUMERIC(18, 0) );
INSERT INTO hibernate_unique_key VALUES(1);
-- script from ms-sql-express, I am not sure if there is a difference for mysql
Приветствие
Juy Juka