我正在使用带EF的breezejs。我的Web API正在返回一个“对象”,该对象由来自多个链接实体的属性组成,这些链接实体用于绑定到网格。稍后我需要更新一些属性,并且我想缓存数据,因此很轻松。我正在使用noDB示例创建一个自定义实体。EF使用Breeze时的错误
第一个问题是微风似乎期望名称属性在addEntityType方法中传递,或者它引发错误'structuralTypeName'参数必须是'字符串'。
第二个问题是调用结构类型._fixup在微风行4742似乎是抛出以下错误对象#有没有方法'_fixup'虽然我可以看到函数存在。
任何人都可以指出我在做什么错在下面的代码?该错误在addEntityType调用中。
manager.metadataStore.addEntityType({
name: "Transcription", shortName: "Transcription", namespace: "Etrans.Data.Models", autoGeneratedKeyType: breeze.AutoGeneratedKeyType.Identity,
dataProperties: {
audio: { dataType: DataType.String }, clientID: { dataType: DataType.Int32 }, clientName: { dataType: DataType.String },
clinicianfirstname: { dataType: DataType.String }, clinicianlastname: { dataType: DataType.String }, Notes: { dataType: DataType.String },
status: { dataType: DataType.String }, transcriptionid: { dataType: DataType.Int32, isPartOfKey: true }, user: { dataType: DataType.String }
}
});
manager.metadataStore.registerEntityTypeCtor("Transcription", null, customReportFields);
在服务器端我有一个名为Etrans.Data的项目中的数据层。 Web API调用一个查询数据层的存储库。在这个例子中,它查询一个名为Transcription(Etrans.Data.Models.Transcription)的实体和一些链接的实体。
DANG!我刚刚证实了我自己:-)你太快了,Jay – Ward 2013-05-14 17:14:04
谢谢你的回复。正如我在查询中提到的,如果我不使用“name”参数并仅使用“shortName”参数,则breeze将引发以下错误 - 'structuralTypeName'参数必须是'string'。它命中4724行。 structuralType似乎是被传递的对象。正如你所看到的,它正在寻找一个不存在的名称属性。 (this.getEntityType(structuralType.name,true)){ var xxx = 7; } – shai 2013-05-15 01:56:11
我认为你没有运行最新版本的Breeze,或者没有刷新缓存。我们运行了您在Breeze v 1.3.3上没有问题的确切代码。 – 2013-05-15 06:08:56