扩展不映射到数据库的Breeze实体

时间:2013-06-16 19:04:52

标签: entity-framework breeze

我正在尝试返回并扩展在我的服务器数据模型中定义的类型,但不包含在EF DataContext中。使用breeze,我可以从BreezeController返回它,但我无法使用实体类型调用registerEntityTypeCtor,因为EntityType不包含在元数据中。

我希望能够扩展模型(目前只在控制台中显示为'Object'类型),并使用计算属性在Angular应用程序中显示...想想'fullName'。

Breeze中有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

您可以通过MetadataStore.addEntityType方法直接创建EntityType并将其添加到MetadataStore。有关此示例,请参阅Breeze zip中的NoDb示例。

获得EntityType后,您可以调用'registerEntityTypeCtor'。如果您“命名”EntityType与将序列化到客户端的服务器端类型一致,那么Breeze将自动识别它。如果没有,那么您可以使用EntityQuery.toType方法强制查询结果被识别为新类型,或者更一般地,您可以创建JsonResultsAdapter来执行相同的操作。