tag page net mvc for asp razor nancy

page - ¿Cómo accedo a la propiedad CurrentUser de Nancy desde una vista Razor?



tag helpers asp net core 2 (1)

Puede acceder al NancyContext través de la propiedad RenderContext propiedad RenderContext .

Un uso de muestra:

@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<dynamic> <p>Current User: @Html.RenderContext.Context.CurrentUser </p>

Sin embargo, si está utilizando el SuperSimpleViewEngine (gracias el comentario a @Sean ), entonces puede hacer algo similar con el

@Context.CurrentUser.UserName

Estoy intentando acceder a la propiedad CurrentUser de NancyContext . ¿Cómo hago esto desde el html de una vista Razor?

Le agradecería un fragmento de código si es posible.

Gracias

Editar

Ahora extiendo Nancy.ViewEngines.Razor.HtmlHelpers para darme datos de vista cruzada con azúcar sintáctico que mantiene el código de vista breve y legible.

Aquí están algunos ejemplos:

public static bool IsRegistered<T>(this HtmlHelpers<T> html) { var user = GetUser(html); return user != null && user.IsRegistered; } public static bool IsAuthenticated<T>(this HtmlHelpers<T> html) { return GetUser(html) != null; } public static User GetUser<T>(this HtmlHelpers<T> html) { return (User)html.RenderContext.Context.CurrentUser; }

Y algún código de afeitar de una vista. Aquí estoy decidiendo incluir el html para una ventana emergente de inicio de sesión (Foundation Reveal) solo si el usuario no está autenticado en ese momento, tiene sentido.

@if (!Html.IsAuthenticated()) { Html.Partial("Reveals/SignInReveal"); }