首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可再分发程序集中自定义控件的本地化

可再分发程序集中自定义控件的本地化
EN

Stack Overflow用户
提问于 2015-06-01 08:34:24
回答 1查看 81关注 0票数 0

我正在尝试构建一个包含多个自定义控件(CommonControls)的可再发行程序集。My环境: MSVC 2010,ASP.NET (WebForms) .NET 2.0/3.0/3.5

问题:如果我通过App_GlobalResources.本地化CommonControls,用Web部署项目编译所有内容都不能工作

下面是我如何构建CommonControls程序集:

我使用一个包含WebSite文件的.ascx和.ascx.cs文件:

以及具有以下设置的网络部署项目

这将创建"CommonControls.dll“。该程序集将用于不同的ASP.NET WebApplication中,如下所示:

web.config:

第一个问题(小问题):将CommonControls添加为依赖项不会自动复制语言的附属程序集。但是,手动将它们复制到正确的输出路径似乎是有效的(用于调试)。

主要问题:主web应用程序也是通过App_GlobalResources本地化的,并使用网络部署项目构建

构建过程将失败

ASPNETCOMPILER : error ASPRUNTIME:对象引用未设置为对象的实例。

两个部署项目都创建了一个名为"bin\App_GlobalResources.compiled“的文件,我想这两个文件不能在同一个输出项目中和平共存。

是否有任何优雅的解决方案来同时本地化CommonContols和Main,使用ASP.NET内置本地化?

注意:我正在处理的项目必须与Apache+Mono兼容,所以我的项目设置(上面的屏幕截图)必须完全像这样才能正确工作(已经测试了所有其他变体)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-10 14:45:07

我修好了。它(可能)是由WDP使用的Bin文件夹中过时的程序集造成的(有时手动清除该文件夹似乎是个好主意)。

我还将文件从"CommonControls\Bin“复制到最终输出(通过预构建事件),这并不是必要的,并且会导致一切中断(翻译的附属程序集由MSVC自动复制)。

虽然我的problem+solution可能对其他人没有那么大的帮助,但至少是一个教程,说明如何用一堆用户控件构建一个可再发行的程序集,并使用一些自定义控件。

备注:

  • 必须合并自定义控件程序集的所有输出。否则,我们将得到2个"App_GlobalResources.dll“文件(不能工作)。
  • 它只适用于“网站项目”,而不是"Web应用程序“。
  • 用户控件必须使用“代码文件/继承”标记,而不是不建议使用的"CodeBehind“标记(删除所有".designer.cs”文件!)
  • 用户控件必须有一个与控件名称不同的"ClassName“标记(我在代码隐藏中追加了”内部“并重命名了类(Es))。
  • 嵌入式资源(图像、脚本.)在“网站项目”中不直接支持。我用了一个额外的LIB
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30568962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档