【发布时间】:2009-05-07 14:35:43
【问题描述】:
我有以下非标准设置(VS2008,.NET 3.5 SP1):
有一个名为 MainSite 的主 Web 项目,并且有几个不同名称的“插件”Web 项目。
在构建这些插件时,我有一个调用aspnet_compiler.exe 和aspnet_merge.exe 的自定义构建步骤。这会产生两个 .DLL 文件 - plugin_name.dll 和 plugin_name_deploy.dll。第一个包含代码隐藏类,第二个包含从 .ascx 文件生成的代码。
然后将这些插件 .DLL 复制到 /MainSite/bin/Plugins/ 文件夹。在运行时(应用程序启动),MainSite 应用程序在此文件夹中查找并动态加载那里的所有 .DLL 文件。
我所有的表单都在插件中,在 .ascx 文件中。主应用程序只是一个框架,它根据需要加载这些 .ascx 用户控件。
现在需要本地化。理想情况下,我希望拥有以下内容:
- 在 Visual Studio 中制作资源时,每个表单都应该有一个单独的资源文件(.ascx 文件),以便人们更轻松地并行本地化表单。
- .ascx 文件中漂亮的
meta:resourcekey方法非常适合本地化控件; - .NET 中的自动资源语言/文化回退机制应该可用;
- 编译的结果应该是所有插件的文件都可以复制到
/MainSite/bin/Plugins/文件夹。如果每种语言/文化都有一个 .DLL 文件,并且必须将它们放在某些特定的子文件夹中 - 只要来自不同插件的 .DLL 没有冲突的名称,那很好。
关于如何实现这一点的任何想法?
【问题讨论】:
标签: asp.net localization webforms globalization aspnet-merge