ValidationLocalizationServiceCollectionExtensions.AddValidationLocalization 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| AddValidationLocalization(IServiceCollection, Action<ValidationLocalizationOptions>) |
將預設 IStringLocalizer的基於 的驗證本地化工具加入服務集合,並透過設定 Microsoft.Extensions.Validation.ValidationOptions.Localizer進行接線。 |
| AddValidationLocalization<TResource>(IServiceCollection, Action<ValidationLocalizationOptions>) |
新增預設 IStringLocalizer的基於 的驗證在地化工具,設定為針對所有被驗證類型中資源類型的 |
AddValidationLocalization(IServiceCollection, Action<ValidationLocalizationOptions>)
將預設 IStringLocalizer的基於 的驗證本地化工具加入服務集合,並透過設定 Microsoft.Extensions.Validation.ValidationOptions.Localizer進行接線。
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddValidationLocalization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Action<Microsoft.Extensions.Validation.Localization.ValidationLocalizationOptions>? configureOptions = default);
static member AddValidationLocalization : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.Extensions.Validation.Localization.ValidationLocalizationOptions> -> Microsoft.Extensions.DependencyInjection.IServiceCollection
<Extension()>
Public Function AddValidationLocalization (services As IServiceCollection, Optional configureOptions As Action(Of ValidationLocalizationOptions) = Nothing) As IServiceCollection
參數
- services
- IServiceCollection
IServiceCollection新增服務。
- configureOptions
- Action<ValidationLocalizationOptions>
一個可選的回調功能來設定 ValidationLocalizationOptions。
傳回
用來 IServiceCollection 串連。
備註
內部呼叫 AddLocalization(IServiceCollection) 以確保 已 IStringLocalizerFactory 註冊,並註冊一個 IConfigureOptions<TOptions> 橋接器,該橋接器設 Microsoft.Extensions.Validation.ValidationOptions.Localizer 為預設實例(僅在 Microsoft.Extensions.Validation.ValidationOptions.Localizer 尚未設定時)。
另外呼叫 AddValidation() 來註冊驗證管線本身。 呼叫順序不重要。
最小 API 參數驗證: 頂層最小 API 參數沒有宣告型別。 對於驗證最小 API 參數的應用程式,建議偏好超 AddValidationLocalization<TResource>(IServiceCollection, Action<ValidationLocalizationOptions>) 載(共享資源模式),或明確設定 LocalizerProvider 為不依賴宣告型別的代理(該 null 代別在參數情況下傳遞)。
預設 IStringLocalizerFactory 註冊 by AddLocalization() 會從 .resx 資源檔案讀取字串。 若要對其他來源(資料庫、JSON 檔案、記憶體字典、第三方翻譯服務)進行本地化,請在 之前或之後IStringLocalizerFactory註冊自己的AddValidationLocalization(IServiceCollection, Action<ValidationLocalizationOptions>)實作。 驗證本地化器會在驗證時解析工廠,因此註冊順序無關緊要:
builder.Services.AddValidation();
builder.Services.AddValidationLocalization();
builder.Services.AddSingleton<IStringLocalizerFactory, MyDatabaseLocalizerFactory>();
適用於
AddValidationLocalization<TResource>(IServiceCollection, Action<ValidationLocalizationOptions>)
新增預設 IStringLocalizer的基於 的驗證在地化工具,設定為針對所有被驗證類型中資源類型的 TResource 在地字串解析。
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddValidationLocalization<TResource>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Action<Microsoft.Extensions.Validation.Localization.ValidationLocalizationOptions>? configureOptions = default);
static member AddValidationLocalization : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.Extensions.Validation.Localization.ValidationLocalizationOptions> -> Microsoft.Extensions.DependencyInjection.IServiceCollection
<Extension()>
Public Function AddValidationLocalization(Of TResource) (services As IServiceCollection, Optional configureOptions As Action(Of ValidationLocalizationOptions) = Nothing) As IServiceCollection
類型參數
- TResource
識別共享資源來源的類型。
參數
- services
- IServiceCollection
IServiceCollection新增服務。
- configureOptions
- Action<ValidationLocalizationOptions>
可選回調以進一步設定 ValidationLocalizationOptions。
傳回
用來 IServiceCollection 串連。
備註
當驗證訊息存在於單一共享資源檔案中,而非每個類型資源檔案時,請使用此方法。
等同於設定 LocalizerProvider 為 (_, factory) => factory.Create(typeof(TResource)),但配置提供者會 IStringLocalizer 解決一次,並對每個宣告類型重複使用同一實例,避免重複出廠查詢。