I имеют следующие метаданные:Не удается прочитать свойство «entityState» неопределенной
var entityTypeParent = {
shortName: 'ParentItemType',
namespace: 'MyNamespace',
autoGeneratedKeyType: Identity,
defaultResourceName: 'ParentItemTypes',
dataProperties: {
id: { dataType: DT.Int32, isPartOfKey: true },
userId: {}
},
navigationProperties: {
user: {
entityTypeName: 'User',
isScalar: true,
associationName: 'ParentItem_User',
foreignKeyNames: ['userId']
}
}
};
var entityTypeUser = {
shortName: 'User',
namespace: 'MyNamespace',
autoGeneratedKeyType: Identity,
defaultResourceName: 'Users',
dataProperties: {
loginName: { dataType: DT.String, isPartOfKey: true },
displayText: {}
}
};
В интерфейсе у меня есть элемент управления (Кендо Multi-Select), который привязан к свойству ParentItemType.user (AngularJS связывания), который позволяет выбрать пользователя из списка (извлекается с помощью моста бриз-кендо и адаптера «webApiOData»).
Выбор пользователя приводит к исключению объекта «Невозможно прочитать свойство» Необязательное исключение в setNpValue
(https://github.com/Breeze/breeze.js/blob/397b2a02aa2173175c304eb1b37332f1656db6f5/src/a35_defaultPropertyInterceptor.js#L298).
context.newValue
- это моя пользовательская сущность, которая фактически не имеет entityAspect
(но она содержит свойство __breezeEntity
, содержащее объект entityAspect).
Это ошибка где-то в моем определении метаданных?
Edit: Я использую Breeze 1.5.1
Я не вижу проблем, которые выделяются в ваших метаданных, но я также не вижу метода setNpValue. Где это? –
Эта функция от Бриз: https://github.com/Breeze/breeze.js/blob/397b2a02aa2173175c304eb1b37332f1656db6f5/src/a35_defaultPropertyInterceptor.js#L279 –
Ah, устанавливая свойство навигации. Получил это, подумал, что это специфично для вашего кода - подумайте о том, чтобы добавить версию Breeze и номер строки к вашему вопросу, поскольку это может помочь IdeaBlade или кому-то помочь вам. –