gpt4 book ai didi

c# - 在扩展方法上注入(inject) DI 服务

转载 作者:太空狗 更新时间:2023-10-29 21:38:03 25 4
gpt4 key购买 nike

我正在尝试在扩展方法中获取 IStringLocalizer 服务实例,这可能吗?关于如何注入(inject)它有什么建议吗?

我的目标是使用名称作为约定来翻译类型。

public static class I18nExtensions
{

private IStringLocalizer _localizer; // <<< How to inject it?

public static string GetName(this Type type)
{
return _localizer[type.Name].Value;
}
}

最佳答案

正在关注 @NightOwl888 comment我走错了路,我最终创建了以下服务:

public class TypeNameLocalizer : ITypeNameLocalizer
{
private IStringLocalizer localizer;

public TypeNameLocalizer(IStringLocalizer<Entities> localizer)
{
this.localizer = localizer;
}
public string this[Type type]
{
get
{
return localizer[type.Name];
}
}
}

来源:@NightOwl888

关于c# - 在扩展方法上注入(inject) DI 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42235948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com