我的.aspx页面中有以下标记:
<ul>
<li><asp:HyperLink ID="lnkHome" NavigateUrl="~/Default.aspx" Text="Home" runat="server" /></li>
<asp:Repeater id="navRepeater" runat="server" DataSourceID="SMDS1" EnableViewState="false">
<ItemTemplate>
<li>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>'><%# Eval("Title") %></asp:HyperLink>
<asp:Repeater ID="Repeater1" runat="server" DataSource='<%# CType(Container.DataItem, SiteMapNode).ChildNodes %>'>
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li>
<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("Url") %>'><%# Eval("Title") %></asp:HyperLink>
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
当我尝试编译它时,我得到了这个:
编译错误
描述:在编译服务&gt;此请求所需的资源期间发生错误。请查看以下特定错误详细信息,并相应地修改源代码&gt;代码。
编译器错误消息:CS0103:当前上下文中不存在名称“CType”
我确实从MSDN网站上获得了这段代码。有谁知道为什么它会给我这个问题?如果该信息有帮助,网站就在C#中。
答案 0 :(得分:5)
我明白了。显然,CType是一个Visual Basic Thing。
((SiteMapNode)Container.DataItem).ChildNodes
固定。