2009-07-30 71 views
0

我开发了一个用户控件,我想在Umbraco中嵌入。这个过程似乎很简单,但我可能正在尝试一些无法完成的事情。用户控件在Umbraco中的问题

我的用户控件依赖于其他几个用户控件。当我尝试在“main”usercontrol中浏览属性时,我得到下面的错误。

我已将所有.ascx文件复制到usercontrols文件夹,并且程序集位于bin目录中。是否有可能在Umbraco中托管一个依赖并包含其他用户控件的“复合”用户控件?

System.Web.HttpParseException:文件'/ucLogin.ascx'不存在。 ---> System.Web.HttpParseException:文件'/ucLogin.ascx'不存在。 ---> System.Web.HttpException:文件'/ucLogin.ascx'不存在。 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath)在System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath,Boolean noBuild,Boolean allowCrossApp,Boolean allowBuildInPrecompile)(HttpContext上下文,虚拟路径virtualPath,布尔noBuild,布尔allowCrossApp,布尔allowBuildInPrecompile)在System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext上下文,VirtualPath virtualPath,布尔noBuild,布尔allowCrossApp,布尔allowBuildInPrecompile)在System.Web.UI.BaseTemplateParser.GetReferencedType(虚拟路径virtualPath,布尔allowNoCompile)在System.Web.UI.BaseTemplateParser.GetUserControlType(VirtualPath virtualPath)在System.Web.UI.MainTagNameToTypeMapper.ProcessUserControlRegistration(UserControlRegisterEntry ucRegisterEntry)在System.Web.UI.BaseTemplateParser.ProcessDirective(String指令名,IDictionary指令)在Sy在System.Web.UI.TemplateParser.ParseStringInternal(String text,Encoding fileEncoding)处的stem.Web.UI.TemplateControlParser.ProcessDirective(String directiveName,IDictionary指令)---在System.Web处结束内部异常堆栈跟踪---。 System.Web.UI.TemplateParser.ParseString(String text,VirtualPath virtualPath,Encoding fileEncoding)处System.Web.UI.TemplateParser.ParseStringInternal(String text,Encoding fileEncoding)处的UI.TemplateParser.ProcessException(Exception ex)--- End内部异常堆栈跟踪---在System.Web.UI.TemplateParser.ParseReader(StreamReader reader,VirtualPath virtualPath)上的System.Web.UI.TemplateParser.ParseString(String text,VirtualPath virtualPath,Encoding fileEncoding)。在System.Web.UI.TemplateParser.ParseInternal()System.Web.UI.TemplateParser.Parse()上System.Web.UI.TemplateParser.Parse(ICollection referencedAssemblies, VirtualPath虚拟路径)在Sys在System.Web.Compilation.BuildProvidersCompiler.PerformBuild()在System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders()在System.Web.Compilation.BuildProvider.GetCompilerTypeFromBuildProvider(BuildProvider buildProvider)at tem.Web.Compilation.BaseTemplateBuildProvider.get_CodeCompilerType() System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context,System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath,Boolean noBuild,Boolean allowCrossApp,Boolean allowBuildInPrecompile)在System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext上下文,VirtualPath virtualPath,布尔noBuild,布尔allowCrossApp,布尔allowBuildInPrecompile)在System.Web.UI.TemplateControl.LoadControl(VirtualPath虚拟路径,布尔noBuild,布尔allowCrossApp,布尔allowBuildInPrecompile)虚拟路径)在System.Web .UI.TemplateControl.LoadControl(字符串virtualPath)在umbraco.developer.assemblyBrowser.Page_Load(对象发件人,EventArgs的)经由ROOTPATH

回答

2

用户控件参照其他控件。您可以将参考/ucLogin.ascx更改为ucLogin.ascx,看看会发生什么。

希望它可以帮助你,

理查德

+0

这是它...我有〜/寄存器指令......感谢参考了这么多,现在感觉很无聊的! – 2009-07-30 11:32:26