【发布时间】:2016-05-24 23:56:57
【问题描述】:
我使用 asp.net 5 Web 应用程序模板 (Mvc6/MVC core/Asp.net-5) 制作了一个名为 ShoppingList 的示例 Web 应用程序。我想使用自定义字段名称 DefaultListId 扩展用户配置文件。
ApplicationUser.cs:
namespace ShoppingList.Models
{
// Add profile data for application users by adding properties to the ApplicationUser class
public class ApplicationUser : IdentityUser
{
public int DefaultListId { get; set; }
}
}
在家庭控制器中,我想访问为此属性存储的数据。我试过了:
namespace ShoppingList.Controllers
{
public class HomeController : Controller
{
private UserManager<ApplicationUser> userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
public IActionResult Index()
{
var userId = User.GetUserId();
ApplicationUser user = userManager.FindById(userId);
ViewBag.UserId = userId;
ViewBag.DefaultListId = user.DefaultListId;
return View();
}
//other actions omitted for brevity
但是我收到以下错误:
严重性代码描述项目文件行抑制状态 错误 CS7036 没有给出对应于 所需的形式参数“optionsAccessor”的 'UserManager.UserManager(IUserStore, IOptions, IPasswordHasher, IEnumerable>, IEnumerable>,ILookupNormalizer, IdentityErrorDescriber, IServiceProvider, ILogger>, IHttpContextAccessor)' ShoppingList.DNX 4.5.1, ShoppingList.DNX 核心 5.0 C:\Users\OleKristian\Documents\Programmering\ShoppingList\src\ShoppingList\Controllers\HomeController.cs 15 活动
还有……
严重性代码描述项目文件行抑制状态 错误 CS1061 'UserManager' 不包含 'FindById' 的定义并且没有扩展方法 'FindById' 接受 可以找到“UserManager”类型的第一个参数 (您是否缺少 using 指令或程序集 参考?) ShoppingList.DNX 4.5.1,ShoppingList.DNX 核心 5.0 C:\Users\OleKristian\Documents\Programmering\ShoppingList\src\ShoppingList\Controllers\HomeController.cs 20 活动
【问题讨论】:
标签: c# asp.net-core-mvc