かみそりの景色からNancyのCurrentUserプロパティにアクセスするにはどうすればいいですか?
質問
CurrentUser
のNancyContext
プロパティにアクセスしようとしています。かみそりビューのHTML内からこれを行うにはどうすればよいですか?
私は可能な限りコードスニペットに感謝します。
ありがとう
編集
Nancy.ViewEngines.Razor.HtmlHelpers
を拡張して、ビューコードの巻きや読みやすい構文砂糖を持つ交差ビューデータを提供します。
ここにはいくつか例があります:
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;
}
.
と視点からいくつかのかみそりコード。ここでは、ユーザーが認証されていない場合にのみ、ポップアップ(Foundation Rever)のためにHTMLを含めることを決定しています - 理解を行います。
@if (!Html.IsAuthenticated())
{
Html.Partial("Reveals/SignInReveal");
}
. 解決
NancyContext
プロパティのHtml
プロパティを介してRenderContext
にアクセスできます。
サンプル使用量:
@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<dynamic>
<p>Current User: @Html.RenderContext.Context.CurrentUser </p>
.
しかし、あなたがSuperSimpleViewEngineを使用している場合( @sean )を使用して、
@Context.CurrentUser.UserName
. 所属していません StackOverflow