У меня есть три класса, которые создают проблему при попытке добавить нового ребенка.
Это:
User {
List attributesGroup>
}
AttributesGroup {
attributesGroupId
value
}
AttributesGroupId {
attrName
userId
}
Отображение:
<class name="AlternativeUserAttributes" table="`AlternativeUserAttributes`" lazy="true">
<composite-id name="Id" class="Data.Entities.AlternativeUserAttributesId">
<key-property name="AttributeName" column="`attributeName`" type="string" />
<key-many-to-one name="User" class="Entities.User" column="`userId`" />
</composite-id>
<property name="AttributeValue" column="`attributeValue`" type="string" />
<many-to-one name="User" column="`userId`" cascade="none" not-null="true" />
</class>
Я могу удалить элементы и класс SaveUpdate в пользовательском классе без проблем, однако при попытке
добавить элемент в коллекцию через:
AlternativeUserAttributes aua = new AlternativeUserAttributes();
aua.Id = new AlternativeUserAttributesId();
aua.Id.AttributeName = name;
aua.Id.User = curUser;
aua.AttributeValue = value;
aua.User = curUser;
curUser.AlternativeUserAttributes.Add(aua);
Я получаю ошибку о том, что число строк, как ожидается, будет равно 1, но равно нулю, и когда я пытаюсь сохранить только AlternateUserAttributes в качестве самого себя с помощью команды Сохранить, я получаю эту ошибку:
Индекс был вне диапазона. Должен быть неотрицательным и меньшим, чем размер коллекции.
Имя параметра: индекс
Обе попытки приводят к ВСТАВКЕ для нового Предмета, но я продолжаю получать эти ошибки. Кто-нибудь может помочь?