当前位置: 首页 > 知识库问答 >
问题:

Olingo Odata4服务器:多主键

闾丘京
2023-03-14

我正在使用Olingo OData4库设置一个基本的OData提供程序。

到目前为止,我已经有了两个简单的实体,由两个属性组成,其中一个元素被定义为键。

+--------+    +---------+
| Person |    | Project |
+--------+    +---------+
| ID     |    | CODE    |
| Name   |    | Name    |
+--------+    +---------+
//create EntityType properties
Property code = new Property().setName("Code").setType(EdmPrimitiveTypeKind.String.getFullQualifiedName());
Property name = new Property().setName("Name").setType(EdmPrimitiveTypeKind.String.getFullQualifiedName());

// create PropertyRef for Key element
PropertyRef propertyRef = new PropertyRef();
propertyRef.setPropertyName("Code");

// configure EntityType
EntityType entityType = new EntityType();
entityType.setName(ET_PROJECT_NAME);
entityType.setProperties(Arrays.asList(code, name));
entityType.setKey(Arrays.asList(propertyRef));

return entityType;
+----------+
| Activity |
+----------+
| pid      | --> FK references (Person.ID)
| pcode    | --> FK references (Project.Code)
| START    |
| END      |
| NAME     |
+----------+
Composite key : {START, END, NAME}

共有1个答案

寿和通
2023-03-14

每个密钥必须注册一个PropertyRef。所以您的代码应该如下所示:

.setKey(Arrays.asList(
          new CsdlPropertyRef().setName("START"),
          new CsdlPropertyRef().setName("END"))),
          new CsdlPropertyRef().setName("NAME")))
 类似资料:
  • 我有一个由4台服务器组成的Redis V4.0.7集群。这4台服务器都在运行我Windows PC上的Ubuntu V17.1064位虚拟机(在VirtualBox中)。我已经转移了所有的从属1服务器,并将在下面对我的“问题”的解释中使用M1作为主1以及S1作为从属1。 null

  • 我是ActiveMQ Artemis的新手,正在尝试配置主从设置。在我的场景中,我使用一个主从。 Master的如下所示: slave的如下所示: master.log是 从日志:

  • 我正在使用谷歌服务帐户将MySQL备份从我们的网络服务器推送到谷歌云端硬盘,使用谷歌API PHP客户端脚本设置为cron作业。 我现在想在多个网络服务器上运行相同的脚本,我不知道如何正确配置服务号,应该吗? > 是否在所有服务器上使用相同的服务帐户和服务帐户密钥/凭据? 或者使用相同的服务帐户,但为每个服务器添加服务帐户密钥/凭据? 还是为每台服务器设置单独的服务帐户?

  • 我是个新手,如果你能给我建议的话,请告诉我。我有一个向客户端广播消息的服务器。然后客户端将回复发送回服务器。我想用单独的线程处理每个回复。每个回复都有mesage id和thread id。我如何用来自所有线程的信息填充一些结构,然后读取它 也从我的代码,它是正确地创建线程,而还是它存在某种方式来创建线程,只是如果我得到客户端的回复? 我是从正确的理解开始的吗? 非常感谢。

  • 我正在构建一个。NET核心web应用程序,在服务器端我为计划任务和长期运行任务添加了hangfire。在我添加的startup.cs文件中: 在configure函数中,我添加了以下内容: 是否有一种方法可以确保只有一个服务器在运行?或者,如果我可以在停止应用程序(IIS)时关闭服务器,并在运行应用程序时再次启动它

  • 多个同步服务器 Since you have full control of express instance lifecycle, it's not a problem to create a few multiple simultaneous servers (e.g. both HTTP & HTTPS). Example: 因为你已经可以完全控制express实例的生命周期了,所以创建多个