【问题标题】:DataBinding: 'System.Web.SiteMapNode' does not contain a propertyDataBinding:“System.Web.SiteMapNode”不包含属性
【发布时间】:2017-08-03 22:23:27
【问题描述】:

我想将字形添加到我使用<asp:Repeater>web.sitemap 文件作为数据源构建的自定义构建菜单中。

这是我尝试过的:

<ul class="nav navbar-nav">
    <asp:Repeater runat="server" ID="rptMenu" DataSourceID="smdsMain">
        <ItemTemplate>
            <li>
                <a runat="server" href='<%# Eval("url") %>'>
                    <span class='glyphicon glyphicon-<%# Eval("glyphicon") %>'></span>
                        <%# Eval("title") %>
                </a>
            </li>
        </ItemTemplate>
    </asp:Repeater>
</ul>
<asp:SiteMapDataSource ID="smdsMain" runat="server" ShowStartingNode="false" SiteMapProvider="XmlSiteMapProvider" />

这是我web.sitemap 中的一个节点示例:

<siteMapNode url="~/Secure/Home/Default" title="Home" description="Home" glyphicon="home" />

这是我得到的错误。

System.Web.HttpException:DataBinding:“System.Web.SiteMapNode”不包含名为“glyphicon”的属性。

如果没有 glyphicon 实现,我其他一切都可以正常工作。

我知道在您的站点地图节点中可以有一个自定义属性,因为有人在这个Stack Overflow post 中实现了它。

所以我一定是在我的客户实施中做错了什么。实现这一点的正确方法是什么?

【问题讨论】:

    标签: c# asp.net data-binding web.sitemap


    【解决方案1】:

    经过一番研究,我发现您可以通过这种方式访问​​自定义属性:

    &lt;%# Eval("[attributeName]") %&gt;

    使用我在我的代码中实现的知识来让它工作:

    <ul class="nav navbar-nav">
        <asp:Repeater runat="server" ID="rptMenu" DataSourceID="smdsMain">
            <ItemTemplate>
                <li>
                    <a runat="server" href='<%# Eval("url") %>'>
                        <span class='glyphicon glyphicon-<%# Eval("[glyphicon]") %>'></span>
                            <%# Eval("title") %>
                    </a>
                </li>
            </ItemTemplate>
        </asp:Repeater>
    </ul>
    <asp:SiteMapDataSource ID="smdsMain" runat="server" ShowStartingNode="false" SiteMapProvider="XmlSiteMapProvider" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-27
      • 2018-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多