ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL
10.0.0-beta.1
dotnet add package ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL --version 10.0.0-beta.1
NuGet\Install-Package ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL -Version 10.0.0-beta.1
<PackageReference Include="ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL" Version="10.0.0-beta.1" />
<PackageVersion Include="ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL" Version="10.0.0-beta.1" />
<PackageReference Include="ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL" />
paket add ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL --version 10.0.0-beta.1
#r "nuget: ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL, 10.0.0-beta.1"
#:package ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL@10.0.0-beta.1
#addin nuget:?package=ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL&version=10.0.0-beta.1&prerelease
#tool nuget:?package=ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSQL&version=10.0.0-beta.1&prerelease
ZaminX.BuildingBlocks.CrossCutting.Translator.PostgreSql
نمای کلی
این پروژه provider مربوط به PostgreSQL برای Parrot را نگه میدارد و مسئول خواندن، مقداردهی اولیه و ثبت ترجمهها در PostgreSQL است.
Registration
builder.Services.AddParrot(parrot =>
{
parrot.UsePostgreSql(options =>
{
options.ConnectionString = "...";
options.Schema = "public";
options.TableName = "ParrotTranslations";
});
});
Options
مهمترین گزینهها:
ConnectionStringSchemaTableNameCommandTimeoutSecondsEnsureTableCreatedReloadModeReloadIntervalRegisterMissingKeysMissingKeyDefaultValueTemplateSeedTranslations
رفتارها
Load
ترجمهها از PostgreSQL خوانده شده و به مجموعهای از TranslationEntry تبدیل میشوند.
Create Table
در صورت فعال بودن EnsureTableCreated، Schema و جدول مورد نیاز بهصورت خودکار ایجاد میشوند.
Seed
در صورت تعریف SeedTranslations، دادههای اولیه در جدول درج میشوند. اگر رکوردی با همان Key و Culture از قبل وجود داشته باشد، از درج مجدد جلوگیری میشود.
Reload
در صورت تنظیم ReloadMode روی Periodic، ترجمهها در بازه زمانی مشخصشده توسط ReloadInterval مجدداً از PostgreSQL بارگذاری میشوند.
Missing Key
در صورت فعال بودن RegisterMissingKeys، کلیدهایی که در زمان ترجمه یافت نشوند، بهصورت خودکار در جدول PostgreSQL ثبت میشوند.
نکات طراحی
- این پروژه فقط Provider مربوط به PostgreSQL است.
- هیچ API عمومی یا Endpoint ارائه نمیکند.
- فقط به پروژه
Abstractionsوابسته است. - برای ارتباط با PostgreSQL از کتابخانه Npgsql استفاده میکند.
- از قابلیتهای PostgreSQL مانند
CREATE TABLE IF NOT EXISTSوINSERT ... ON CONFLICT DO NOTHINGبرای ایجاد جدول و جلوگیری از درج دادههای تکراری استفاده میشود.
| 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.Data.SqlClient (>= 7.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.5)
- Microsoft.Extensions.Options (>= 10.0.5)
- Npgsql.EntityFrameworkCore.PostgreSQL (>= 10.0.1)
- 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 | 712 | 7/19/2026 |