$metadata/EntityTypes: multiple keys definition not supported
Hi,
When an EntityType contains multiple keys, it only display the first @Edm.Key refered inside the model
Example: EntityType Definition export class RoleAssignment extends PersistentObject { @Edm.Key @Edm.String @Edm.MaxLength(255) @Edm.Annotate({ term: "UI.DisplayName", string: "User id" }) UserId: string;
@Edm.Key
@Edm.String
@Edm.MaxLength(20)
@Edm.Annotate({
term: "UI.DisplayName",
string: "Role id"
})
RoleId: string;
...
$metadata response EntityType Name="RoleAssignment"> <Key> <PropertyRef Name="UserId"/> </Key>
Proposed correction File: src/edm.ts From line: 208 @parseAs(new AttributeFunctionChain( (d, i) =>d.key, (props, i) => props || [], (props, i) => props.map(prop => new Key(prop, i)), (props) => { return { propertyRefs: props.reduce((aRefs, mProp) => aRefs.concat(mProp.propertyRefs), []) }; /return props[0];/ } ))
instead of @parseAs(new AttributeFunctionChain( (d, i) =>d.key, (props, i) => props || [], (props, i) => props.map(prop => new Key(prop, i)), (props) => return props[0] ))
Many thanks for your attention