Breeze删除失败,json有神秘的“未定义”:false

时间:2013-04-13 04:08:44

标签: breeze

我正在建立一个遵循John Papa的Code Camper SPA Jumpstart Pluralsight课程的网站。我的数据库/实体具有以下层次结构:

  • 熟练程度包含行动和等级。

当我删除“熟练程度”时,我收到以下服务器方面的错误: “对象引用未设置为对象的实例。”

看着BreezeController中的json JObject saveBundle,我看到了一个神秘的东西:

  

“undefined”:false,

在每个实体中。我的实体都没有布尔值。就像在Code Camper中一样,我在每个实体的构造函数中添加一个“isPartial”,如下面的代码所示。

        var proficiencyConstructor = function () {
        this.isPartial = false;
    }

        metadataStore.registerEntityTypeCtor('Proficiency', proficiencyConstructor, proficiencyInitializer);


    function proficiencyInitializer(proficiency) {
    var empty = "00000000-0000-0000-0000-000000000000";
    if (proficiency.id() === empty) {
        proficiency.id(breeze.core.getUuid());
    }
};

我的直觉说神秘的“未定义”:false是“isPartial”属性。根据{{​​3}},“Breeze将isPartial属性作为未映射的属性添加到实体元数据。未映射属性的值传输到服务。”我被卡住了。有人建议我可以做些什么来解决这个问题吗?

谢谢, 丹

以下是savebundle

的示例
  

{“实体”:       [       {“Id”:“a0223d7c-35e5-458f-ba83-65ec7ec189fa”,“Name”:“AST Prof0”,“IsEnabled”:true,“Description”:“AST Prof0”,“ProficiencyType”:“TBD”,“ ApplicationId“:”7ba4b47f-06a3-4ceb-bca6-de3fd3699bbd“,”undefined“:false,”entityAspect“:{”entityTypeName“:”熟练程度:#LobGame.Model“,”entityState“:”已删除“,”originalValuesMap“ :{“IsPartial”:true},“autoGeneratedKey”:null}},

1 个答案:

答案 0 :(得分:3)

这可能是由于现在在微风1.2.8中的错误修复。这为我修好了。

从他们的发行说明:

  

错误修复了涉及删除的保存失败的情况   保存还涉及对未映射属性的修改。

http://www.breezejs.com/documentation/download