diff --git a/docs/en/Repositories.md b/docs/en/Repositories.md index 61383898e6..e39c100b47 100644 --- a/docs/en/Repositories.md +++ b/docs/en/Repositories.md @@ -192,6 +192,31 @@ Major vendors, like Entity Framework, NHibernate or MongoDB already support `IQu There are also `IReadOnlyRepository` and `IReadOnlyBasicRepository` interfaces for who only want to depend on querying capabilities of the repositories. +The `IReadOnlyRepository` derives the `IReadOnlyBasicRepository` and provides the following properties and methods as well: + +Properties: + +`AsyncExecuter`: a service that is used to execute an `IQueryable` object asynchronously **without depending on the actual database provider**. + +Methods: + +- `GetListAsync()` +- `GetQueryableAsync()` +- `WithDetails()` 1 overload +- `WithDetailsAsync()` 1 overload + + + +Where as the `IReadOnlyBasicRepository` provides the following methods: + +- `GetCountAsync()` +- `GetListAsync()` +- `GetPagedListAsync()` + +They can all be seen as below: + +![generic-repositories](\images\generic-repositories.png) + ### Generic Repository without a Primary Key If your entity does not have an Id primary key (it may have a composite primary key for instance) then you cannot use the `IRepository` (or basic/readonly versions) defined above. In that case, you can inject and use `IRepository` for your entity. diff --git a/docs/en/images/generic-repositories.png b/docs/en/images/generic-repositories.png new file mode 100644 index 0000000000..4a162569a9 Binary files /dev/null and b/docs/en/images/generic-repositories.png differ