【问题标题】:Why breeze sends to server originalvaluesMap for unmapped property?为什么微风向服务器 originalvaluesMap 发送未映射的属性?
【发布时间】:2014-04-16 03:49:48
【问题描述】:

我正在使用带有 Web Api 和 EFContextProvider 的微风 1.4.11

在获取元数据后在客户端上扩展实体类型:

var addressStringProperty = new breeze.DataProperty({
    name: "addressString",
    isUnmapped: true
})
metadataStore.getEntityType('Account').addProperty(addressStringProperty);

此属性仅在客户端计算和使用

entitymanager.saveChanges([accountEntity]) 之后,我在contextprovider.BeforeSaveEntity 的服务器端看到entityInfo.OriginalvaluesMap 包含键“AddressString”,其值== null。

与扩展实体类似:

var accountCtor = function() {
  this.addressString = ko.observable()
};
metadataStore.registerEntityTypeCtor('Account', accountCtor);

如何省略这种行为?

【问题讨论】:

    标签: breeze


    【解决方案1】:

    这是一个很好的问题,也可能是一个疏忽。我会把它作为一个新的错误添加,但是......只是出于好奇,为什么这对你来说有问题?

    【讨论】:

    • 我在服务器上检查客户端上更改了哪些属性。一些用户在编辑实体方面受到限制。在这种情况下,用户只能编辑一个特定属性,但客户端在 originalValuesMap 中发送了两个。
    • OriginalValuesMap 不包含实体初始化器中添加的那些属性的键,因此问题实际上可以解决。
    猜你喜欢
    • 1970-01-01
    • 2014-03-01
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    相关资源
    最近更新 更多