Каков подходящий способ отображения типов носителей в openrasta? До этого момента на одном из наших остальных API, мы определили пользовательские типы носителей с номером версии в них:Версии типов носителей в OpenRasta
application/vnd.company.Entity-v1+xml
В настоящее время все эти СМИ типа просто передается в пользовательский кодек, который мы определили для удаления некоторых из теги по умолчанию и теги ns, которые XmlSerializer ставит в сериализацию. В верхней части этого кодека мы имеем:
[MediaType("application/vnd.company.Entity-v1+xml")]
Теперь мы до точки, где у нас есть клиенты, которые хотят пользовательские атрибуты и элементы в XML и, таким образом, создали новый объект, который обрабатывает эти атрибуты и элементы, которые происходит от Entity. Теперь у нас есть задача перемещения конкретных клиентов до нового объекта (EntityV2), однако я не уверен, как справиться с этим в контексте OpenRasta, когда дело доходит до получения этого нового типа сущности в обработчиках. Вот то, что мы думали о до сих пор:
- Добавить другой метод POST в обработчик для обработки производного типа
- Создать совершенно новый URL-адрес для обработки новой сущности
- создать новый тип носителя и затем направьте запросы каким-то образом на новый обработчик. Это было бы самым большим усилием, поскольку мы пытаемся повторно использовать один и тот же обработчик с небольшим количеством логики решения, чтобы определить, что нужно делать с новыми элементами/атрибутами.
Любой совет будет рад!