Я не смог сделать окончательный выбор и надеялся, что кто-то (или комбинация из нескольких человек) может указать на различия между использованием клиентских сервисов RestSharp и ServiceStack (имея в виду, что я уже пользуюсь ServiceStack для мой сервис). Вот что я до сих пор (различия только). Список довольно небольшой, поскольку они действительно очень похожи:
ServiceStack
Pros
- Свободная проверка от уже созданных объектов POCO службы
- Один API для клиента и службы
- Код читается лучше (т.е. Get < > (), Post < > ())
Против
- Некоторые из моих строк должны быть записаны (т.е. если я делаю запрос GET с параметрами запроса, я должен создать эту строку в своем коде)
- Я должен создать другой класс для каждого типа запроса/ответа (JsonServiceClient, XmlServiceClient)
RestSharp
Pros
- Почти все может быть POCO (т.е. если я делаю запрос GET с параметрами запроса, я просто добавляю параметры через код)
- Переключение между типами запроса/ответа прост (request.RequestFormat = DataFormat.Json/Xml)
Против
- Ручная проверка (кроме тех, что указаны в аннотации данных)
- Два API для обучения (это незначительно, поскольку они оба довольно просты)
- Код не так читается с первого взгляда (т.е. request.Method = Get/Post.. и главный вызов - Execute <T> ())
Я склонялся к RestSharp, поскольку он больше склоняется к прямому использованию POCO и очень мало манипулирует строкой, однако я считаю, что ServiceStack может быть приемлемым для получения проверки и кода, который легче читать.
Итак, вот вопросы:
- Что вы предпочитаете?
- Почему одна над другой?
Я знаю, что это не полностью субъективный вопрос, но, как минимум, я ищу ответ на этот вопрос (который субъективен):
- Являются ли какие-либо из моих находок неправильными и/или есть ли что-то, что я пропустил?