0

如果我有一个 POCO-Object(与 EF 或任何其他框架无关),它看起来如下(来自 NoDb-Example):

public class TodoItem {
  public int TodoItemId { get; set; }
  public string Title { get; set; }
  public bool IsDone { get; set; }
}

Breeze 如何知道,或者我如何告诉 Breeze,TodoItemId 是 EntityKey?我是否必须手动处理“元数据”(http://www.breezejs.com/documentation/metadata-hand-depth)?我目前不太了解如何配置/影响 EntityKey-Concept。

我可以使用某种 .NET-Attribute 吗?我在服务器端使用 .NET-Framework 4.5 和 Web API。

4

1 回答 1

0

我看到您指的是Breeze NoDb 示例。该示例完全是关于不在服务器上使用与您的场景匹配的实体框架(只是通过 Web API 公开的普通 POCO)。

在这种类型的服务器中,服务器不公开模型元数据,因此 Breeze 无法自动知道模型中的实体以及它们之间的关系。相反,您需要在客户端上构建此信息,正如您正确猜测的那样。

要了解构建客户端元数据时所涉及的内容,请查看Scripts\app\todo.model.jsBreeze NoDb 示例中的文件。在那里,您将看到元数据是如何构建的,以及在描述模型时如何使用“isPartOfKey”属性来告诉 Breeze 哪个属性是主键。

附带说明一下,如果您不想使用 Entity Framework 进行持久性,但您想从 POCO 在服务器上自动生成元数据,您应该阅读Breeze 文档中的Entity Framework 作为元数据设计工具.

于 2014-01-29T07:22:30.670 回答