2017-08-03 67 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