私たちのソフトウェア アーキテクトは、すべての 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;}
}
ベースレスポンス:
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;}
}