从视图访问控制器属性

发布于 2024-07-29 21:18:34 字数 387 浏览 2 评论 0原文

我在 Base 控制器上有一个 User 对象,这是 .Net Membership Provider 所拥有的标准类型的 User 对象。 我需要决定用户是否有权访问操作、视图等。

我遇到一个问题,我想在母版页上显示用户信息。 就像 WebForms 的登录视图一样。 我尝试从母版页访问用户对象,但不能。

那么:

我是否通过检查用户是否登录视图来打破关注点分离(简单的 if 语句改变显示的内容)。

我可以简单地访问基本控制器名称空间来访问此属性吗?或者这有什么问题吗? 控制器什么时候初始化?

当我写这篇文章时,我认为让我的基本控制器拥有这个属性首先可能是一个坏主意。

啊啊!! 您将如何处理检查用户信息以更改母版页。

I have a User object on a Base controller, this is the standard type of User object you have with the .Net Membership Provider. I need this is decide if users have access to actions, views, and so on.

I am having a problem whereby I want to display user information on the Masterpage. Like a login view from WebForms. I tried to access the User object from the Masterpage but I can't.

So:

Am I breaking the separation of concerns by checking if the user is logged in on the view (simple if statement which changes what is displayed).

Can I simply access the base controller namespace to access this property or is there something wrong with that? When do the controllers get initialised?

As I write this I consider that having my base controller have this property might be a bad idea on the first place.

AGHH!! How would you handle checking user information to change the Masterpage.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

酒解孤独 2024-08-05 21:18:41

用这个:

<% var user = ViewContext.HttpContext.User; %>

Use this:

<% var user = ViewContext.HttpContext.User; %>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文