// Exception 발생시 에러 응답 메시지를 만들어 주는 용도namespaceRxCats.GameApi.Filter;publicclassGlobalExceptionFilter:IExceptionFilter{}
// 로그인 이후 API 에서 Request 의 헤더값에 `X-UserId` 및 `X-AccessToken` 을 체크하기 위한 용도namespaceRxCats.GameApi.Filter;[AttributeUsage(AttributeTargets.Class|AttributeTargets.Method)]publicclassValidateSession:ActionFilterAttribute{}
Middleware
// Content-Type 이 `application/x-msgpack` 인 경우 Request 및 Response 를 Logging 하기 위한 용도namespaceRxCats.GameApi.Middleware;publicclassMessagePackLoggingMiddleware{}
// Content-Type 이 `application/json` 인 경우 Request 및 Response 를 Logging 하기 위한 용도namespaceRxCats.GameApi.Middleware;publicclassJsonLoggingMiddleware{}
Provider
// 로그인시 Request 의 AccessToken 을 체크하기 위한 용도// 구현체 : RxCats.GameApi.Provider.Impl.FirebaseProvider.csnamespaceRxCats.GameApi.Provider;publicinterfaceIAccessTokenValidateProvider{TaskValidateAccessToken(stringuserPlatformId,stringaccessToken);}
DbContext
// Entity Framework Core 이용시 DB CRUD 를 공통으로 사용하기 위한 용도// 구현체 : RxCats.GameApi.Repository.Impl.DbOperations.csnamespaceRxCats.GameApi.Repository;publicinterfaceIDbOperations<TEntity>{Task<TEntity?>FindById(objectid);TaskInsert(TEntityentity);TaskDelete(objectid);voidDelete(TEntityentityToDelete);voidUpdate(TEntityentityToUpdate);TaskSave();}
// DB 작업을 사용할 경우 인스턴스 생성 후 사용하는 용도namespaceRxCats.GameApi.Repository;publicclassGameRepository:IDisposable{}