You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core 6 MVC 本地化问题:SharedResource 未找到排查

.NET Core 6 MVC本地化提示未找到SharedResource的排查方案
  • 检查SharedResource类的命名空间与资源文件命名匹配
    如果SharedResource类位于你的项目名.Model命名空间下,Resources文件夹中的资源文件需命名为你的项目名.Model.SharedResource.en-US.resx和你的项目名.Model.SharedResource.fa-IR.resx。.NET Core本地化默认按类的完全限定名匹配资源文件,直接命名为SharedResource.en-US.resx会导致无法匹配到Model文件夹下的类。

  • 确认资源文件的生成操作设置
    右键资源文件→属性,确保生成操作设置为嵌入的资源,自定义工具留空(.NET Core不需要生成资源代码类)。若生成操作错误,资源文件不会被嵌入程序集,本地化组件无法读取。

  • 验证本地化服务的资源路径配置
    在ConfigureServices中配置AddLocalization时,需指定资源文件所在文件夹路径,确保与实际文件夹名一致(注意大小写,跨平台环境敏感):

    services.AddLocalization(options => options.ResourcesPath = "Resources");
    
  • 确保SharedResource类为public访问修饰符
    SharedResource类必须是public的,否则IHtmlLocalizer无法访问该类型进行资源查找,示例代码:

    namespace YourProjectName.Model
    {
        public class SharedResource
        {
            // 空类即可,无需任何成员
        }
    }
    
  • 检查视图中的注入与调用是否正确
    确认视图中的注入语句正确,泛型参数指向正确的SharedResource类,且调用时的变量名与注入名一致:

    @inject IHtmlLocalizer<SharedResource> SharedLocalizer
    <!-- 调用示例 -->
    @SharedLocalizer["Year"]
    

内容的提问来源于stack exchange,提问作者nnmmss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 10:02:02