Я пытаюсь создать таблицу БД, используя файл отображения NHibernate * hbm.xml, в котором будет столбец контроля версий для проверки параллелизма.Столбец контроля версий должен иметь значение NULL.
Хотя база данных создана просто отлично, используя файл сопоставления в качестве ссылки, происходит следующее: * Первая запись вставляется со значением NULL в качестве версии * Обновление ранее вставленных записей завершается с ошибкой "Устаревшие данные "исключение
Другими словами, что бы я ни делал, столбец Версия всегда равен NULL.Я несколько новичок в управлении параллелизмом, использующем NHibernate, поэтому я не совсем понимаю, что я делаю неправильно ..
Если я использую метку времени в качестве версии, все работает просто отлично.Тем не менее, мое требование состоит в том, чтобы использовать целое число. Отсюда моя проблема.
Это мой файл сопоставления:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" default-lazy="true" auto-import="false" assembly="New1.Backend" namespace="New1.BO">
<class name="Natrio" table="`Natrios`" schema="`dbo`">
<cache usage="read-write" />
<id name="Id" column="`Id`" type="System.Int32">
<generator class="NHibernate.Id.Enhanced.TableGenerator">
<param name="increment_size">200</param>
<param name="segment_value">Natrios</param>
<param name="optimizer">pooled-lo</param>
</generator>
</id>
<version name="Version" column="`Version`" type="System.Nullable`1[[System.Int32, mscorlib]], mscorlib" generated="always" unsaved-value="0">
<column name="`Version`" not-null="false" sql-type="int" />
</version>
<property name="Attribute" column="`Attribute`" type="String" not-null="false" length="100" />
</class>
</hibernate-mapping>
Любые мысли и / или предложения будут с благодарностью!