@ -201,15 +201,15 @@ See the [authorization document](Authorization.md) for more.
## CRUD Application Services
If you need to create a simple **CRUD application service** which has Create, Update, Delete and Get methods, you can use ABP's **base classes** to easily build your services. You can either inherit from `CrudAppService` or `AsyncCrudAppService`.
If you need to create a simple **CRUD application service** which has Create, Update, Delete and Get methods, you can use ABP's **base classes** to easily build your services. You can inherit from `CrudAppService`.
### Example
Create an `IBookAppService` interface inheriting from the `IAsyncCrudAppService` interface.
Create an `IBookAppService` interface inheriting from the `ICrudAppService` interface.
````csharp
public interface IBookAppService :
IAsyncCrudAppService< //Defines CRUD methods
ICrudAppService< //Defines CRUD methods
BookDto, //Used to show books
Guid, //Primary key of the book entity
PagedAndSortedResultRequestDto, //Used for paging/sorting on getting a list of books
@ -219,12 +219,12 @@ public interface IBookAppService :
}
````
* `IAsyncCrudAppService` has generic arguments to get the primary key type of the entity and the DTO types for the CRUD operations (it does not get the entity type since the entity type is not exposed to the clients use this interface).
* `ICrudAppService` has generic arguments to get the primary key type of the entity and the DTO types for the CRUD operations (it does not get the entity type since the entity type is not exposed to the clients use this interface).
`IAsyncCrudAppService` declares the following methods:
`ICrudAppService` declares the following methods:
````csharp
public interface IAsyncCrudAppService<
public interface ICrudAppService<
TEntityDto,
in TKey,
in TGetListInput,
@ -279,7 +279,7 @@ And finally, the `BookAppService` implementation is very simple:
`AsyncCrudAppService` implements all methods declared in the `IAsyncCrudAppService` interface. You can then add your own custom methods or override and customize base methods.
`CrudAppService` implements all methods declared in the `ICrudAppService` interface. You can then add your own custom methods or override and customize base methods.