我正在使用內置的登錄名ASP.NET MVC應用程序。此頁面還有2個菜單項,用戶無需登錄即可訪問。Asp.net內置登錄隱藏菜單
我的要求是,用戶應該能夠直到他登錄進入任何菜單項的,所以無論是我需要隱藏菜單項或禁用它的點擊次數,直到用戶已經登錄。
我怎樣才能做到這一點?
我正在使用內置的登錄名ASP.NET MVC應用程序。此頁面還有2個菜單項,用戶無需登錄即可訪問。Asp.net內置登錄隱藏菜單
我的要求是,用戶應該能夠直到他登錄進入任何菜單項的,所以無論是我需要隱藏菜單項或禁用它的點擊次數,直到用戶已經登錄。
我怎樣才能做到這一點?
如果你使用的剃刀視圖,那麼你可以使用這樣的事情:
@if(Request.IsAuthenticated) {
<span><a href="#">@user.ShortName</a></span>
<text>
@Html.ActionLink("My Profile", "profile", "account") |
@Html.ActionLink("Help", "index", "help") |
@Html.ActionLink("Log Off", "LogOff", "Account")
</text>
}
的@if中的代碼{...}塊是,如果用戶登錄,你會顯示什麼。
WebForms(.aspx)視圖有相當的代碼,您可以通過多種方式進行操作。
一種方法是從代碼隱藏和操作服務器控件。所以,你的.aspx頁面中就會有這樣的事情:
<asp:HyperLink ID="lnkMyProfile" Text="My Profile" NavigateUrl="/myprofile"></asp:HyperLink>
然後在你的代碼隱藏(.aspx.cs爲例):
if(User.Identity.IsAuthenticated) {
lnkMyProfile.Visible = true;
} else {
lnkMyProfile.Visible = false;
}
沒有這對我沒有工作...... :( – 2011-05-03 22:00:24
問題是我有幾個頁面在ASP.net MVC和幾個在Asp.net中...菜單欄鏈接到MVC中的幾個頁面,很少在asp.net .. 。對於MVC我可以通過[Authorize]來控制它,但是如何控制鏈接爲asp.net – 2011-05-03 22:01:52
問題是菜單欄鏈接在ASP幾頁。淨MVC和很少在Asp.net中...菜單欄鏈接到MVC中的幾個頁面,很少在asp.net中...對於MVC我可以通過[Authorize]控制它,但是如何控制asp.net的鏈接 – 2011-05-03 22:02:25