1709168958
2024-02-28 13:00:00
Localization Provider v8.0 がついにリリースされたことを発表できることを嬉しく思います。
繰り返しますが、予想よりも少し時間がかかりました:)
新着情報?
- .NET8 がデフォルトのターゲットとして設定される
- 外部翻訳サービス用のプロバイダー モデルを追加しました
- さまざまなバグ修正
- いくつかのパフォーマンスの改善
ConfigurationContext構成構成もサポートされるようになりました (ローカリゼーション プロバイダーのデフォルト設定を追加して構成した後で、一部の設定を変更できます)。 これは、特定のテスト用にいくつかの設定を調整する必要がある単体テスト シナリオで非常に役立ちます。- リソース キーの比較が改善され、ホット パスでのパフォーマンスが若干向上しました。
- 管理 UI にページネーションを追加しました
- セキュリティの向上 (デフォルトでは安全でない接続をアップグレードします)
- 依存関係のアップグレード
クラウドトランスレーター
編集者がコンテンツを翻訳するタイミングに問題がある場合、クラウドベースの翻訳者を追加してクラウドの力を活用できるようになりました。
現在サポートされている翻訳者:
Microsoft Azure Cognitive Services をローカリゼーション プロバイダーのトランスレーターとして有効にするには、次の手順に従います。
- Azure で Cognitive Services インスタンスを作成する
- コピー アクセスキー そして 地域
- Azure Cognitive Services の登録をローカリゼーション プロバイダーのセットアップ コードに追加します。
1
2
3
4
5
6
7
8
9
public void ConfigureServices(IServiceCollection services)
{
services.AddDbLocalizationProvider(x =>
{
x.UseAzureCognitiveServices("{access-key}", "{region}");
// rest of the provider configuration...
});
}
から値を読み取る方がよいでしょう。 appsettings.json ファイルまたは選択したその他の安全なストレージ ( Azure KeyVault)。
クラウド トランスレータを正常に構成すると、編集者は魔法の杖を使ってリソースを簡単かつ迅速に翻訳できるようになります。
構成後の設定
事後設定を実行することもできます(呼び出した後)。 AddDbLocalizationProvider())ローカリゼーションプロバイダーの。 これは、スタートアップ コードの実行後に Web アプリの単体テストを行う際に、単体テストが正しく実行されるように構成後の設定が適用されていることを確認したい場合に便利です。
注意! 予めご了承ください。 ない 任意のタイプ、スキャナー、または実行中に DI コンテナーに追加されるその他のものを構成できます。 AddDbLocalizationProvider() 電話。 この制限は、型が DI コンテナに追加され、その後構成が呼び出されるという事実によるものです ( IServiceProvider すでに構築されています)。
ローカライゼーションプロバイダーを事後設定するには、標準に従う必要があります .NETオプション パターン:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
...
services.AddDbLocalizationProvider(cfg =>
{
...
});
// post configuring provider
services.Configure<ConfigurationContext>(ctx =>
{
ctx.EnableInvariantCultureFallback = false;
});
}
}
AdminUI でパフォーマンスの問題 (ページの読み込み時間、リソースの更新時間など) が発生している場合は、この機能をオンにする必要があります。
ページネーションを有効にするには – 設定します EnableDbSearch に true。
1
2
3
4
5
6
7
8
9
10
11
services.AddDbLocalizationProviderAdminUI(x =>
{
// enable "server-side" pagination
x.EnableDbSearch = true;
// optionally you can set number of resources
// to return when pagination is enabled
x.PageSize = 50;
// rest of the configuration...
});
ページネーションが有効になっている場合、AdminUI はデフォルトでリソースをロードしません。 結果としてリソースを取得する唯一の方法は、リソース キーの任意の部分を指定して検索を実行することです。
貢献する
ライブラリが気に入っていて、さらに改善したい場合は、貢献することを検討してください。 始めるのに最適な場所はチェックアウトすることです 問題リスト パッケージ用。
アイデアはありますか?
ライブラリを改善する方法や、最も欠けている機能についてアイデアがある場合は、フィードバックを残すことを検討してください。 問題リスト。
いつものように、コーディングを楽しんで、ローカライズを楽しんでください!
[eof]
#DbLocalizationProvider #v8.0 #リリース #テックフェローのブログ