私は ServiceStack の初心者であり、そのしくみを学ぶために、Northwind データベース用の Web API を開発します (リポジトリ パターンを使用)。
サンプル プロジェクトServiceStack.Northwindを確認しましたが、2 つのサービス (Customers と Orders) しかありません。完全な API (顧客、注文、製品など) を開発したいと考えています。マット・コーワンのような何か。
基本的に、すべてのサービスはどの操作に対しても同じことを行います。
- 依頼を受けます。
- 実行 (Repository.Get、Repository.Add、Repository.Update、Repository.Delete)。
- 返信を返します。
このために、ほとんどすべての作業を行う基本クラスを作成することを考えました。まず、次のようなものから始めました。
public class BaseService<TRepository, TEntity, TDto> : Service
{
...
}
このクラスの問題は、各操作のリクエストとレスポンスの型がわからないことです。だから私はそれらを型引数として渡すと思った:
public class BaseService<TRepository, TEntity, TDto, TRequest, TSingleResponse, TCollectionResponse> : Service
{
...
}
私はこれが好きではありません。クラスにn型引数を渡さなくてもできると思います。
この基本クラスの開発にどのようにアプローチしますか?
事前にどうもありがとうございました。