使用in-fetchEntity方法修改后未保存Breeze实体

使用in-fetchEntity方法修改后未保存Breeze实体,breeze,savechanges,Breeze,Savechanges,我试图在fetchEntity方法中修改实体的SortOrder属性,并在其后调用save方法。当我检查数据库时,更改不会持久化在那里。我在控制台中没有看到任何错误。当您将Breeze与Knockout一起使用时,实体的所有属性都是可观察的。因此,您需要设置它们,而不是覆盖它们的值 $.each(vm.ListBox2(), function (index2, value2) { if (vm.ListBox2()[index2].IsNewDxCode == fal

我试图在fetchEntity方法中修改实体的SortOrder属性,并在其后调用save方法。当我检查数据库时,更改不会持久化在那里。我在控制台中没有看到任何错误。

当您将Breeze与Knockout一起使用时,实体的所有属性都是可观察的。因此,您需要设置它们,而不是覆盖它们的值

 $.each(vm.ListBox2(), function (index2, value2) {

            if (vm.ListBox2()[index2].IsNewDxCode == false)
            {
                return datacontext.fetchEntity("EpisodeDxM00Rel", vm.ListBox2()[index2].Id).then(function (result) {
                    var episodeDxM00RelEntity = result.entity;
                    episodeDxM00RelEntity.SortOrder = index2;
                    vm.save();
                });

            }

        });


 dc.fetchEntity = function (entityName, key) {
        return manager.fetchEntityByKey(entityName, key);
 };

 dc.saveChanges = function () {
        return manager.saveChanges()
                .fail(dc.saveFailed);
    };

当然,observables有两个主要方法——get()和set(value)

您是否使用Knockout、Angular或其他库进行数据绑定?能否共享fetchEntity和vm.save()函数的代码?
episodeDxM00RelEntity.SortOrder(index2);