Сервер ODATA: имя свойства и идентификатор свойства - PullRequest
0 голосов
/ 16 марта 2020

Я реализовал пользовательскую службу ODATA.

Кажется, что ODATA не различает guish между именем свойства и идентификатором свойства. Возьмите этот файл метаданных:

<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
    <edmx:DataServices>
        <Schema Namespace="ttt" xmlns="http://docs.oasis-open.org/odata/ns/edm">
            <EntityType Name="Non table data">
                <Key>
                    <PropertyRef Name="key"/>
                </Key>
                <Property Name="key" Type="Edm.String" Nullable="true"/>
                <Property Name="period" Type="Edm.String" Nullable="true"/>
                <Property Name="period" Type="Edm.String" Nullable="true"/>
            </EntityType>
            <EntityContainer Name="DemoContainer">
                <EntitySet Name="Non table data" EntityType="ttt.Non table data"/>
            </EntityContainer>
        </Schema>
    </edmx:DataServices>
</edmx:Edmx>

Есть 2 свойства с периодом имени - это означает, что метаданные недействительны (я думаю). Тем не менее, я хочу дать своим пользователям возможность определять свойства самостоятельно и не хочу проверять, являются ли имена уникальными. Также имена могут измениться.

Поэтому я хочу использовать UUID в качестве идентификатора идентификатора. Это означает, что мне не нужно заботиться о том, какие имена определяет пользователь.

Файл данных должен выглядеть следующим образом:

{
    "@odata.context": "http://192.168.0.100:4000/odata.svc/9007662e-6776-4ccb-bd5d-643a0a4f04b6/e9ba37768ae7e2e395e61cba55ff271a/$metadata#Non table data",
    "value": [
        {
            "72dfca7b-2a32-4188-a895-3e7c9c0d30a0": "1",
            "4e674922-0dec-41eb-a92a-e4ea0b9051e7": "07/2020",
            "cee801ec-6db5-4153-8c86-0633b169e323": "08/2020",
        },
    ]
}

Есть ли способ использовать идентификатор в файл данных без использования его в качестве описания столбца?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...