im пытается выяснить, как авторизировать только не прошедших проверку пользователей. У меня есть указатель на вкладке, отображаемой на моей карте сайта, и я хочу, чтобы она отображалась, когда пользователь еще не вошёл в систему.ASP.NET MVC 2 Авторизовать ТОЛЬКО пользователей, не прошедших проверку подлинности
ответ
Что вы спрашиваете, это не совсем похоже на авторизацию - на мой взгляд, авторизованный пользователь (в этом случае не прошедший проверку пользователя) будет обслуживать ActionResult
(в этом случае представление), в то время как неавторизованный пользователь не будет. В том, что вы описываете, ActionResult
возвращается для всех пользователей; мы просто хотим выпустить дополнительные html fr вашей вкладки для пользователей, не прошедших проверку подлинности.
Вы можете просто хотеть проверить User.Identity.IsAuthenticated
или Request.IsAuthenticated
, и если они не прошли проверку подлинности, испустите HTML-код для входа в свой аккаунт. Вы можете OT поместить это в MVC UserControl
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
if (!Request.IsAuthenticated) {
%>
<!-- html here for your sign in tab -->
<%
}
else {
%>
<!-- possibly want a sign out tab here for authenticated users? -->
<%
}
%>
Поместите пользовательский элемент управления в общей папке, то использовать в представлении, как так
<% Html.RenderPartial("Name of User Control"); %>
+1 - Я думал, одно и то же! – Chris