2017-08-03 70 views
1

我想通過單擊按鈕來限制僅限註冊用戶(會員)的訪問。如何使用ASP中的按鈕限制訪問MVC

我嘗試使用[Authoriz][無動作]我上面的控制器梅索德,但沒有奏效。

這是我的按鈕的HTML代碼:

<p><a href="/Voitures/Create" class="btn btn-primary btn-lg">Sell your Car &raquo;</a></p> 
+0

「沒有工作」* how *?你有什麼特別的嘗試,特別是它失敗了嗎?有很多例子和教程,介紹如何在ASP.NET MVC中實現身份驗證和授權。堆棧溢出不會嘗試替換這些示例和教程。從那些開始。 – David

+0

我試過了,我讀了很多tutos,但沒有成功,我只是想知道它是否可以用這個html代碼,或者我必須用另一種方式 – Anouar

+0

那麼,你展示的代碼只不過是一個HTML元素(包含另一個HTML元素)。所以,不,服務器端的認證和授權*不可*,只有*這個HTML代碼。你應該從這些教程開始。授權與您展示的單行HTML代碼無關。回過頭再試一次,在任何給定的教程中,當你遇到與他們展示的東西有關的特定問題時,我們可以幫助解決這個問題。 – David

回答

1

據我所知,你是問如何限制訪問的onclick行動只對註冊/登錄的用戶。這裏是你如何可以簡單地表明,只有當用戶在(用剃刀)登錄鏈接/按鈕:

@if (Request.IsAuthenticated) 
{ 
    <p><a href="/Voitures/Create" class="btn btn-primary btn-lg">Sell your Car &raquo;</a></p> 
} 

這很容易被改變,以防止點擊動作等

編輯:所以要讓這個鏈接顯示,但不會去任何地方,你可以改變它,像這樣:

@if (Request.IsAuthenticated) 
{ 
    <p><a href="/Voitures/Create" class="btn btn-primary btn-lg">Sell your Car &raquo;</a></p> 
} 
else 
{ 
    <p><a href="javascript:;" class="btn btn-primary btn-lg">Sell your Car &raquo;</a></p> 
} 
+0

感謝您的回答,但是當我嘗試您的建議時,洞按鈕消失。 – Anouar

+0

我已編輯答案,向您展示如何顯示鏈接/按鈕,但在用戶未登錄時將其禁用。 –

+0

感謝Scott,但我希望按鈕保持不變並將用戶重定向到登錄頁面 – Anouar

0

我從你的問題明白,要禁用一個按鈕,用戶如果他不是登錄。要做到這一點,你可以檢查一下,如果用戶沒有登錄,只需刪除th e鏈接後,未註冊的用戶將無法訪問該頁面。

我建議您將用戶重定向到登錄頁面,如果他當前沒有登錄/註冊,而不是爲匿名用戶禁用按鈕。

@if (Request.IsAuthenticated){ 
    <p><a href="/Voitures/Create" class="btn btn-primary btn-lg">Sell your Car&raquo;</a></p> 
} 
else{ 
    <p><a href="javascript:;" class="btn btn-primary btn-lg">Sell your Car&raquo;</a></p> 
} 
+0

謝謝你回答我的問題,但是我想在用戶尚未登錄時將用戶重定向到ligin頁面,並且不禁用該按鈕,不過謝謝你 – Anouar