在 Umbraco 版本 7.3.5 中获取当前用户

Get current user in Umbraco version 7.3.5

我正在尝试访问登录的 Umbraco 用户,而不是会员,但我无法正常工作。

我尝试了以下方法,但 none 有效,它们都是 return null:

umbraco.BusinessLogic.User.GetCurrent()
UmbracoContext.UmbracoUser
UmbracoContext.Security.CurrentUser
umbraco.helper.GetCurrentUmbracoUser()

我可以使用以下代码访问用户,例如姓名:

UmbracoContext.Application.Services.UserService.GetByEmail("name@company.com").Name

我试过此代码作为用户和成员登录,仅用户,仅成员且根本未登录,它总是 return 相同的结果,null。

我在 SurfaceController 和 UmbracoApiController 中尝试了代码,结果相同。使用 Membership.GetUser(); 登录会员没有问题有其他人经历过吗?

使用:Umbraco 版本 7.3.5 程序集:1.0.5858.25602

我昨天刚刚实现了一些代码来获取当前 user 使用:

UmbracoContext.Current.Security.CurrentUser

这不是您尝试过的选项之一吗?

是的,我之前尝试过多种方式访问​​当前后端用户,发现唯一的方法是:

var userTicket = new System.Web.HttpContextWrapper(System.Web.HttpContext.Current).GetUmbracoAuthTicket();
if (userTicket != null)
{
    var currentUser = ApplicationContext.Services.UserService.GetByUsername(userTicket.Name);
}