Мое клиентское приложение использует RestSharp для связи с моим webapi. В настоящее время у меня есть класс "APIBase", который содержит метод Task<IRestResponse<T>> Submit<T>(RestRequest r)
, который выполняет переданный ему запрос и возвращает тип методу вызывающего:
public async static Task<IRestResponse<T>> Submit<T>(RestRequest request) where T: class {
// Method logic
}
Затем я создаю класс для каждого маршрута и метод для каждой конечной точки и расширение APIBase. Конечная точка «Список заказов» будет доступна с помощью метода в таком классе: Я хотел бы сделать что-то вроде этого:
[Endpoint("/api/orders/list"), Method.GET]
public static async Task<IRestResponse<List<OrdersDto>>> List()
{
return await Submit<List<OrdersDto>>();
}
Создание запроса внутри базового метода APIBase.Submit
, возможно, даже перемещение возвращаемого типа в атрибуты. Я не знаю, как использовать атрибуты и учебные пособия, которые я вижу в inte rnet, а не go достаточно дальше, чтобы я знал, возможно ли это, поэтому мне действительно интересно, возможно ли все это.