Наш архитектор программного обеспечения требует, чтобы все действия API имели свой собственный класс ответа, поскольку каждый ответ может немного отличаться.Таким образом, мы в основном помещаем Product DTO в класс Base Response и немного настраиваем при необходимости.Это хорошая архитектурная практика?Я начал программировать, и это кажется довольно повторяющимся.Кроме того, что является лучшей альтернативой для этого?
Класс продукта:
public class ProductDto
{
public int ProductId { get; set;},
public string ProductName { get; set;},
public string ProductDescription { get; set;},
public float SalesAmount { get; set;}
}
BaseResponse:
public class BaseResponse<T>
{
[Required, ValidateObject]
public T Body { get; set; }
public bool HasError { get; set; }
public string Error { get; set; }
}
Индивидуальный ответ:
public class CreateProductResponse : BaseResponse<ProductDto>
{
}
public class DeleteProductResponse : BaseResponse<int>
{
}
public class GetAllProductResponse : BaseResponse<IEnumerable<ProductDto>>
{
public int Count { get; set;};
}
public class GetProductResponse : BaseResponse<ProductDto>
{
}
public class UpdateProductResponse : BaseResponse<ProductDto>
{
public date DateUpdate { get; set;}
}