asp.net中的站点地图不适用于登录页面

时间:2013-12-05 20:08:10

标签: asp.net

我有本网站地图:

<asp:ContentPlaceHolder ID="SiteMapHolder" runat="server">
    <!-- ===================== Site Map ======================= -->
        <div id="SiteMapTD"  class="SiteMap">
                            <asp:SiteMapPath id="SiteMapPath" runat="server" pathseparator="/">
                            <PathSeparatorStyle Font-Bold="True" ForeColor="#800000" />
                            <CurrentNodeStyle ForeColor="#000000" />
                            <NodeStyle Font-Names="Palatino linotype" Font-Size="16px" Font-Bold="True" ForeColor="#800000" />
                            <RootNodeStyle Font-Names="Palatino linotype" Font-Size="16px" Font-Bold="True" ForeColor="#800000" />
                        </asp:SiteMapPath>
                    </div>
    </asp:ContentPlaceHolder>

在登录页面以外的所有页面中都可以正常使用 当我进入此页面时,站点地图内容为空白 这是Web.sitemap配置文件

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0"  >
    <siteMapNode url="~/Default.aspx" title="ΑΡΧΙΚΗ ΣΕΛΙΔΑ">
    <siteMapNode url="~/Account/Login.aspx" title="Είσοδος" >
      <siteMapNode url="~/Account/Register.aspx" title="Εγγραφή" />
    </siteMapNode>
  </siteMapNode>    
</siteMap>

是否有人知道为什么会这样?

其他更新
查看Inspect Element我在Login.aspx文件中看到这一点,请注意登录根本不显示

outerText: "↵Login↵Παρακαλώ περάστε το όνομα χρήστη και τον κωδικό

另一方面,我在Register.aspx中有另一种行为

outerText: "Start Page/SignIn↵Νέος Λογαριασμός↵Χρησιμοποιέστε 

2 个答案:

答案 0 :(得分:1)

请确保您的“登录”页面中的ContentPlaceHolderID="SiteMapHolder"没有任何内容控件。即,您的Login.aspx页面不应包含以下行:

<asp:Content ID="BodyContent" runat="server" 
     ContentPlaceHolderID="SiteMapHolder">

login页面上的内容控件将使用以下内容覆盖您在主文件中定义的默认内容:<asp:ContentPlaceHolder ID="SiteMapHolder" runat="server">

答案 1 :(得分:0)

我非常感谢你在这个问题上帮助我的努力 但是从我看到的情况来看,除了从头开始建立一个新的网站之外,没有任何解决办法 这就是我所做的,所有以前的问题都消失了,现在我正在写新的用户处理 不是来自标准的会员提供者,但我正在创建我自己的一个并操纵用户数据,因为我的网站需要,不多,不少。
再次感谢...
在我的下一篇文章中见。