Angularjs saveChanges BreezeJs后管理器中的更改跟踪

Angularjs saveChanges BreezeJs后管理器中的更改跟踪,angularjs,nhibernate,breeze,Angularjs,Nhibernate,Breeze,我在客户端使用Breeze和Angular,在服务器上使用NHibernate。出于业务逻辑原因,我需要知道某些对象在保存后是否有更改。出于这个原因,我正在调用 manager.hasChanges(['ArrayOfTypes']); 当对象从db加载时,它按预期工作(返回true/false), 但在通过 manager.saveChanges(['ArrayOfTypes']); 我得到这个错误: TypeError:无法读取未定义的属性“hasChanges” 在breeze.js文

我在客户端使用Breeze和Angular,在服务器上使用NHibernate。出于业务逻辑原因,我需要知道某些对象在保存后是否有更改。出于这个原因,我正在调用

manager.hasChanges(['ArrayOfTypes']);
当对象从db加载时,它按预期工作(返回true/false), 但在通过

manager.saveChanges(['ArrayOfTypes']);
我得到这个错误:

TypeError:无法读取未定义的属性“hasChanges”

在breeze.js文件中抛出错误:

proto._hasChangesCore = function(entityTypes) {
    entityTypes = checkEntityTypes(this, entityTypes);
    var entityGroups = getEntityGroups(this, entityTypes);

    return entityGroups.some(function (eg) {

            return eg.hasChanges();          
    });
};
我预计将返回32个entityGroups,数组中确实有32个元素,但其中25个元素未定义。目前,我做了一个临时修复,但感觉一点也不对劲:

    proto._hasChangesCore = function(entityTypes) {
    entityTypes = checkEntityTypes(this, entityTypes);
    var entityGroups = getEntityGroups(this, entityTypes);

    return entityGroups.some(function (eg) {

        if (eg !== undefined) {
            return eg.hasChanges();
        }
        else {
            return false;
        }
    });
};
有没有其他方法来处理这个问题


感谢

当一个或多个实体类型未由实体管理器中的
EntityGroup
表示时,会发生这种情况。但是您应该能够传入任何类型名,而不会让它爆炸

这是微风中的一只虫子。该修复程序将在下一版本中发布