"WebAppDevTutorialMessage":"See web application development tutorial document for a step by step development sample.",
"WebAppDevTutorialMessage":"See web application development tutorial document for a step by step development sample.",
"CommunityArticles":"Community Articles",
"CommunityArticles":"Community Articles",
"CommunityArticleMessage":"Check ABP Community Platform to read useful articles for ABP Framework.",
"CommunityArticleMessage":"Check ABP Community Platform to read useful articles for ABP Framework.",
"InvestigateSolutionDetails":"Investigate the Solution Details",
"InvestigateSolutionDetails":"Check out the Solution Details",
"StartupTemplateDocumentationMessage":"See application startup template document to learn the architecture and the structure of your solution.",
"StartupTemplateDocumentationMessage":"See application startup template document to learn the architecture and the structure of your solution.",
"ClientSideDevelopment":"Client Side Development",
"ClientSideDevelopment":"Client Side Development",
"ClientSideDevelopmentDocumentationMessage":"See the {0} document to learn key points for user interface (client side) development.",
"ClientSideDevelopmentDocumentationMessage":"See the {0} document to learn key points for user interface (client side) development.",
@ -272,4 +272,4 @@
"SubscribeToNewsletter":"Subscribe to the newsletter to get information about happenings in the ABP.IO Platform, like new releases, articles, offers, and more.",
"SubscribeToNewsletter":"Subscribe to the newsletter to get information about happenings in the ABP.IO Platform, like new releases, articles, offers, and more.",
@ -37,7 +37,6 @@ public class YourModule : AbpModule
````
````
> Quartz background worker integration provided `QuartzPeriodicBackgroundWorkerAdapter` to adapt `PeriodicBackgroundWorkerBase` and `AsyncPeriodicBackgroundWorkerBase` derived class. So, you can still fllow the [background workers document](Background-Workers.md) to define the background worker.
> Quartz background worker integration provided `QuartzPeriodicBackgroundWorkerAdapter` to adapt `PeriodicBackgroundWorkerBase` and `AsyncPeriodicBackgroundWorkerBase` derived class. So, you can still fllow the [background workers document](Background-Workers.md) to define the background worker.
> `BackgroundJobWorker` checks jobs every 5 seconds, but quartz will not block when long time jobs are executing. So,after Added Quartz background worker integration, you also need to add [Quartz Background Jobs](Background-Jobs-Quartz.md) or [Hangfire Background Jobs](Background-Jobs-Hangfire.md) to avoid duplicate execution jobs.
Once the proxies are generated, you can inject and use the application service interfaces of these proxies, like `IProductAppService` in this example. Usage is same of the [dynamic C# client proxies](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients).
The next step is to enable the static proxy system for your application (or module) using the `AddStaticHttpClientProxies` extension method:
````csharp
context.Services.AddStaticHttpClientProxies(
typeof(MyApplicationContractsModule).Assembly
);
````
You can then inject and use the application service interfaces of these proxies. The usage is same of the [dynamic C# client proxies](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients).
When you use static proxies for a module / application, you don't need to dynamic proxies. Find and remove the `context.Services.AddHttpClientProxies(...)` in your solution (typically in the `*.HttpApi.Client` project).
@ -19,21 +19,18 @@ First things first! Let's setup your development environment before creating the
The following tools should be installed on your development machine:
The following tools should be installed on your development machine:
* [Visual Studio 2019](https://visualstudio.microsoft.com/vs/) (v16.8+) for Windows / [Visual Studio for Mac](https://visualstudio.microsoft.com/vs/mac/). <supid="a-editor">[1](#f-editor)</sup>
* An IDE (e.g. [Visual Studio](https://visualstudio.microsoft.com/vs/)) that supports [.NET 6.0+](https://dotnet.microsoft.com/download/dotnet) development.
* [Yarn v1.20+ (not v2)](https://classic.yarnpkg.com/en/docs/install) <supid="a-yarn">[2](#f-yarn)</sup> or npm v6+ (already installed with Node)
* [Yarn v1.20+ (not v2)](https://classic.yarnpkg.com/en/docs/install) <supid="a-yarn">[1](#f-yarn)</sup> or npm v6+ (already installed with Node)
{{ end }}
{{ end }}
{{ if Tiered == "Yes" }}
{{ if Tiered == "Yes" }}
* [Redis](https://redis.io/) (the startup solution uses the Redis as the [distributed cache](Caching.md)).
* [Redis](https://redis.io/) (the startup solution uses the Redis as the [distributed cache](Caching.md)).
{{ end }}
{{ end }}
<supid="f-editor"><b>1</b></sup>_You can use another editor instead of Visual Studio as long as it supports .NET Core and ASP.NET Core._<sup>[↩](#a-editor)</sup>
{{ if UI != "Blazor" }}
{{ if UI != "Blazor" }}
<supid="f-yarn"><b>2</b></sup>_Yarn v2 works differently and is not supported._<sup>[↩](#a-yarn)</sup>
<supid="f-yarn"><b>1</b></sup>_Yarn v2 works differently and is not supported._<sup>[↩](#a-yarn)</sup>
@ -16,7 +16,7 @@ You can find source code of the completed application [here](https://github.com/
## Pre-Requirements
## Pre-Requirements
* An IDE (e.g. [Visual Studio](https://visualstudio.microsoft.com/vs/)) that supports [.NET 5.0+](https://dotnet.microsoft.com/download/dotnet) development.
* An IDE (e.g. [Visual Studio](https://visualstudio.microsoft.com/vs/)) that supports [.NET 6.0+](https://dotnet.microsoft.com/download/dotnet) development.