您好我一直在研究MVC 2.0 Web应用程序。 这需要在两种语言之间切换。
现有的解决方案效果不佳,因为MVC [DisplayName]属性和数据注释错误消息等不起作用,因为它们在MVC 2.0中没有文化感知。
通过一些调整,它在我的Visual Studio环境中完美运行并切换语言并使用MVC diplay名称等现在很好。 我正在使用嵌入式资源并具有英语resx文件(例如MyPage.resx)和文化版本(例如MyPage.cy-GB.resx)。
问题是当我将其安装到生产环境中时,它不会切换语言。 我感到困惑,因为我认为这些嵌入式资源将成为主要Web应用程序DLL的一部分,所以它应该没有找到匹配的资源吗?
我知道它肯定会改变当前线程的文化。它只是没有加载匹配的资源。
使用WIX安装应用程序而不收获但我已经包含了所有文件(aspx等)。以前它使用附属程序集并在bin文件夹中使用文化名称创建资源dll。我删除了这个,因为我只是使用上面提到的嵌入式资源。卫星组件是否需要这个?我很高兴他们被嵌入。
我真的很困惑如何解决这个问题,所以任何建议都会非常受欢迎。
由于
答案 0 :(得分:0)
MyPage.cy-GB.resx嵌入在附属程序集中。事实上,嵌入式资源是附属于卫星组件的必要资源。