读书人

左侧导航设计 标题小弟我也不知道怎

发布时间: 2012-02-01 16:58:19 作者: rapoo

左侧导航设计 标题我也不知道如何取 大哥大姐帮帮忙
一个Menu 菜单表,里面设计MenuID(pk) Name Parentid URL
一个UserInfo用户表 设计UserID(pk) UserName Password
一个Nexus关系表 设计UserID(FK) MenuID(Fk)
菜单表和用户表都是一个关系表的外键,也就是某个用户有某些单菜的关联就有进入该菜单的权限(不知道这样说能听懂吗)
我用树读取所有菜单的Name 但是我想取得用户ID后判断关系表中是否有关联,有就读出来,没有就不显示。这个怎么判断?

第二,我判断出来后如何绑定URL 也就是跳转的地址?

我从前做的时候没有做权限也就是所有的的都是用一个模版写死了的, URL地址也是用<a href="url地址">这样固定了,不知道我上面这样的设计是否可以实现,又是如何实现?



帮帮忙!

[解决办法]

引用楼主 dengyi425 的帖子:
我用树读取所有菜单的Name 但是我想取得用户ID后判断关系表中是否有关联,有就读出来,没有就不显示。这个怎么判断?

[解决办法]
......留个脚印~~明天再看~~
[解决办法]
o
[解决办法]
探讨
这样都没看明白我的意思?

我不要SQL语句。这个我会写
比如我的树下面有1,2。3,4,5这五个页面。而张三只有1,2,3我如何读出来显示在树控件上 意思是有的读出来没有的不显示

[解决办法]
明白了,是可以在的候先理好。
考下面存程,你一用ID,就查出所有示的菜
SQL code
CREATE PROCEDURE GetMenusByUserID@UserID INT    --用IDASDECLARE @tmp TABLE (mid INT PRIMARY KEY NOT NULL,pid INT)INSERT INTO @tmp SELECT MenuID,Parentid FROM Nexus WHERE UserID=@UserIDDECLARE @OldRecordCnt INTDECLARE @CurRecordCnt INTSELECT @OldRecordCnt=COUNT(*) FROM @tmpWHILE @OldRecordCnt<>0BEGIN    INSERT INTO @tmp SELECT MenuID,Parentid FROM Menu a INNER JOIN @tmp b ON a.MenuID=b.pid     WHERE a.MenuID NOT IN(SELECT mid FROM @tmp)    SELECT @CurRecordCnt=COUNT(*) FROM @tmp            IF @CurRecordCnt=@OldRecordCnt         BREAK    ELSE            SET @OldRecordCnt=@CurRecordCntENDSELECT m.MenuID,m.Name,m.ParentId,m.URL FROM Menu m WHERE m.MenuID IN (SELECT mid FROM @tmp)GO
[解决办法]
你用的是什么控件?可以使用定啊。
[解决办法]
考下面的示例,我用DataList控件示接,每使用一HyperLink,其中NavigateUrl中的Link字段(即你的URL)定,而Text(即接的文本)中的Name字段定。
HTML code
    <asp:DataList ID="DataList2" runat="server" DataKeyField="ID" DataSourceID="SqlDataSource2">        <ItemTemplate>            <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Link") %>' Text='<%# Eval("Name") %>'></asp:HyperLink><br />        </ItemTemplate>    </asp:DataList><asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:onlineConnectionString3 %>"        SelectCommand="SELECT [ID], [Link], [Name] FROM [MenuClass]"></asp:SqlDataSource> 

读书人网 >asp.net

热点推荐