我一直试图按照msdn上提供的指南将我的asp.net网站转换为一个web应用程序。然而,香港专业教育学院碰到我的一些用户控件的实现模板,得到以下错误的问题:将WS转换为WAP
“System.Web.UI.UserControl”没有名为“的ContentTemplate”
的公共属性代码隐藏明确地定义了这样的模板属性,这在WS中很适用。
[TemplateContainer(typeof(ContentContainer))]
[PersistenceMode(PersistenceMode.InnerProperty)]
[TemplateInstance(TemplateInstance.Single)]
public ITemplate ContentTemplate { get; set; }
更新:我不知道如何或为何但是一些这些控件已成功地转化为WAP用户控件(加上了设计文件),那么问题是,没有ASP控制我这些模板中定义可在代码后面可以找到。
错误:
名称 'DropDownRoles' 不会在目前情况下
存在的标记:
<%@ Register src="~/Controls/Containers/ContainerFrame.ascx" tagname="ContainerFrame" tagprefix="uc" %>
<uc:ContainerFrame ID="ContainerFrame1" Title="Layout" runat="server">
<ContentTemplate>
<asp:DropDownList ID="DropDownRoles" runat="server" />
</ContentTemplate>
</uc:ContainerFrame>
任何想法?
添加名称空间有部分帮助。 错误如“名称'TextBoxUserName'在当前上下文中不存在”从页面的代码隐藏中随机出现。 在空的WAP解决方案中写入类似的代码没有给出任何错误,感觉非常随意。 当用谷歌搜索这个问题时,顶级解决方案是选择cs文件作为一个“嵌入式资源”,允许它进行编译,但导致副作用。不应该代码隐藏的cs文件被编译? – CodeSpeaker 2009-08-15 13:16:44