かみそりの景色からNancyのCurrentUserプロパティにアクセスするにはどうすればいいですか?

StackOverflow https://stackoverflow.com//questions/11688451

  •  12-12-2019
  •  | 
  •  

質問

CurrentUserNancyContextプロパティにアクセスしようとしています。かみそりビューの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
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top