2015-04-07 80 views
10

使用Visual Studio 2013与引用快递MVC应用程序 MVC 5.2 Asp.Net.Identity.Core 2.0找不到User.Identity.GetUserId()方法

任何控制器内部或从其他地方在我的应用程序GetUserId()方法似乎并不存在,我不能为了我的生活理解这可能是什么。我的印象是这是一个包含在Asp.Net Identity 2x中的方法。我可能会在这里错过什么?

+5

您是否添加了命名空间'Microsoft.AspNet.Identity'? – 2015-04-07 07:10:50

+0

那里是...哇..因为我可以访问User.Identity.Name和IsAuthenticated而不添加该名称空间..我认为它只是可用...谢谢! –

+2

是的,因为User.Identity可用,这有点棘手。如果您在GetUserId()上转到(f12),您将看到它位于IdentityExtensions的组中。这很整洁,因为它是一个使用[System.Security.Principal]创建自己的扩展的小模板(https://msdn.microsoft.com/en-us/library/system.security.principal(v = vs.110 )的.aspx) – 2015-04-07 07:42:59

回答

19

这是一种扩展方法。引用类顶部的名称空间。

using Microsoft.AspNet.Identity; 
2

自2015 RC1起,GetUserId扩展​​方法位于System.Security.Claims命名空间中。