【发布时间】:2023-03-17 09:19:01
【问题描述】:
我有一个引用多个项目的多语言 MVC Web 应用程序。应用程序的资源也在单独的项目/模块中定义,例如 Application.Models.Resources。
这种方法在初始语言集上效果很好,但现在我向资源项目添加了其他语言,新的语言资源 dll 不会复制到应用程序的 /bin 文件夹中。例如,瑞典语 ('sv') 变体已添加到资源项目中,它不会被复制到应用程序的 /bin/sv 文件夹中。
资源文件的访问修饰符设置为“公共”。
我错过了什么?如何确保安装了语言变体?
任何建议将不胜感激。
【问题讨论】:
-
你是如何发布你的项目的??通常我们在发布到本地系统文件时总是会遇到这种情况。解决它的一种解决方法是从调试更改为发布,或者在发布向导中反过来。
-
嗨,Sam,在清理和解决方案重建后,所需的文件夹/dll 甚至没有出现在源应用程序的 /bin 文件夹中。我通过从解决方案中卸载资源项目然后重新加载它“有点”找到了修复 - 这没关系,但这意味着您必须重新链接所有引用,
-
你试过在调试和发布之间切换吗?
-
嗨,Sam,是的,我试过了,但没有任何区别。我尚未尝试的是卸载和加载项目 - 如果可行,我会告诉你。
-
我无法测试卸载/重新加载项目,因为删除然后重新引用项目实现了两件事:i)它使主应用程序识别新的语言变体,ii)它修复了未来添加到资源项目中的新语言的问题。我不确定原始引用有什么问题,但这种方法解决了问题。
标签: c# asp.net-mvc resources globalization