ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot
10.0.0-beta.1
dotnet add package ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot --version 10.0.0-beta.1
NuGet\Install-Package ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot -Version 10.0.0-beta.1
<PackageReference Include="ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot" Version="10.0.0-beta.1" />
<PackageVersion Include="ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot" Version="10.0.0-beta.1" />
<PackageReference Include="ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot" />
paket add ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot --version 10.0.0-beta.1
#r "nuget: ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot, 10.0.0-beta.1"
#:package ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot@10.0.0-beta.1
#addin nuget:?package=ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot&version=10.0.0-beta.1&prerelease
#tool nuget:?package=ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot&version=10.0.0-beta.1&prerelease
ZaminX.BuildingBlocks.CrossCutting.Translator.Parrot
نمای کلی
این پروژه پیادهسازی اصلی capability مربوط به Parrot را نگه میدارد.
نقش این پروژه:
- پیادهسازی ITranslator
- نگهداری دادهها در حافظه
- ترکیب دادههای providerها
- اعمال fallback
- مدیریت refresh
- ارائه registration اصلی
اجزای اصلی
ParrotTranslator
پیادهسازی API مصرفی capability است.
ParrotTranslationStore
دادههای ترجمه را در حافظه نگه میدارد و lookup را انجام میدهد.
ParrotTranslationProviderCoordinator
مسئول بارگذاری دادهها از providerها و merge آنهاست.
ParrotRefreshService
برای refresh دادهها استفاده میشود.
ParrotStartupHostedService
در زمان startup، بارگذاری اولیه دادهها را انجام میدهد.
رفتارها
کش
تمام دادهها پس از load در حافظه نگهداری میشوند.
merge providerها
providerها به ترتیب registration اجرا میشوند.
providerهای بعدی میتوانند دادههای قبلی را override کنند.
fallback
ترتیب lookup:
- culture دقیق
- parent culture
- invariant
- خود key
formatting
دو نوع formatting وجود دارد:
- با آرگومان ترجمهشونده
- با آرگومان raw
registration
نقطه ورود اصلی:
services.AddParrot(parrot ⇒ { parrot.UseSqlServer(...); });
نکات طراحی
- این پروژه به provider خاصی وابسته نیست
- registration provider در پروژه provider انجام میشود
- logging در این لایه حداقلی است
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.Hosting (>= 10.0.5)
- ZaminX.BuildingBlocks.CrossCutting.Translator.Abstractions (>= 10.0.0-beta.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.0-beta.1 | 731 | 4/4/2026 |