Используется несколько классов сущностей и классов доступа к данные. Классы сущностей унаследованы от такого класса:
public class PersistentObject<TId> : IPersistentObject<TId> where TId : struct
{
[DataMember]
public virtual TId Id { get; set; }
...
Ошибка с mapping'ом такого класса сущности:
public class WatchList: PersistentObject<int>
{
[DataMember]
public virtual string Name { get; set; }
[DataMember]
public virtual User UserId { get; set; }
[DataMember]
public virtual WatchSecurity WatchSecurity{ get; set; }
}
И это самое свойство TId Id проецируется с ошибкой, для него используется такой mapping:
<class name="WatchList" lazy="true" table="[WatchList]">
<id name="Id" type="int" unsaved-value="0">
<column name="Id" sql-type="int" not-null="true" unique="true" />
<generator class="identity" />
</id>
Названия таблиц и их атрибутов указаны правильно, а в сообщении исключения написано только то, что ошибка с mapping'ом. Без описания этого свойства id ошибки не возникает, но оно нужно. Подскажите, пожалуйста, в чём может быть ошибка с mapping'ом этого свойства.
Здравствуйте, Ilya81, Вы писали:
I>Используется несколько классов сущностей и классов доступа к данные. Классы сущностей унаследованы от такого класса:
I>I>public class PersistentObject<TId> : IPersistentObject<TId> where TId : struct
I> {
I> [DataMember]
I> public virtual TId Id { get; set; }
I>...
I>
I>Ошибка с mapping'ом такого класса сущности:
I>I>public class WatchList: PersistentObject<int>
I> {
I> [DataMember]
I> public virtual string Name { get; set; }
I> [DataMember]
I> public virtual User UserId { get; set; }
I> [DataMember]
I> public virtual WatchSecurity WatchSecurity{ get; set; }
I> }
I>
I>И это самое свойство TId Id проецируется с ошибкой, для него используется такой mapping:
I>I><class name="WatchList" lazy="true" table="[WatchList]">
I> <id name="Id" type="int" unsaved-value="0">
I> <column name="Id" sql-type="int" not-null="true" unique="true" />
I> <generator class="identity" />
I> </id>
I>
I>Названия таблиц и их атрибутов указаны правильно, а в сообщении исключения написано только то, что ошибка с mapping'ом. Без описания этого свойства id ошибки не возникает, но оно нужно. Подскажите, пожалуйста, в чём может быть ошибка с mapping'ом этого свойства.
Попробуйте не указывать unique="true" для Id. По идее идентификатор и так уникален.