我试图aspnetuser从不同的控制器(而不是accountcontroller)设置表中的列的值.我一直试图访问,UserManager但我不知道如何做到这一点.
到目前为止,我已经在控制器中尝试了以下内容我想用它:
ApplicationUser u = UserManager.FindById(User.Identity.GetUserId());
u.IsRegComplete = true;
UserManager.Update(u);
Run Code Online (Sandbox Code Playgroud)
这不会编译(我想因为UserManager还没有实例化控制器)
我还尝试创建一个公共方法,AccountController以接受我想要更改值的值并在那里做,但我无法弄清楚如何调用它.
public void setIsRegComplete(Boolean setValue)
{
ApplicationUser u = UserManager.FindById(User.Identity.GetUserId());
u.IsRegComplete = setValue;
UserManager.Update(u);
return;
}
Run Code Online (Sandbox Code Playgroud)
如何访问和编辑帐户控制器之外的用户数据?
更新:
我尝试在其他控制器中实例化UserManager,如下所示:
var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(db));
ApplicationUser u = userManager.FindById(User.Identity.GetUserId());
Run Code Online (Sandbox Code Playgroud)
我的项目符合(有点兴奋),但当我运行代码时,我收到以下错误:
Additional information: The entity type ApplicationUser is not part of the model for the current context.
Run Code Online (Sandbox Code Playgroud)
更新2:
我已将该功能移至IdentityModel(不要问我在这里抓住吸管),如下所示:
public class ApplicationUser : IdentityUser
{
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) …Run Code Online (Sandbox Code Playgroud) asp.net-mvc actioncontroller asp.net-mvc-5 asp.net-identity-2
我发现了许多教程,用于向Identity表(我已成功移动到应用程序数据库)中添加列,但是我的理解是这不适用于数据库拳头项目.那么......如何在数据库第一个项目中的aspnetusers表中添加列?
我想要一个名为Is RegComplete的位类型列,它最初设置为0,然后在用户完成更多任务然后设置为1的某个时刻.
我正在编写一个宏来将Web API中的XML数据提取到电子表格中.第一列包含两个用逗号分隔的字段,因此我扩展了宏以插入列,然后运行Text to Columns以拆分数据.
该宏工作得很好,但我收到一个恼人的警告,询问我是否要替换数据:

有没有办法压制警告?
我使用针对azure平台的asp.net MVC和SQL Server创建了一个简单的应用程序构建.我的问题是关于日期格式.我添加了一个正确使用dd/mm/yyy格式的日期选择器.但是当我选择日期时,我得到以下验证错误.

该项目首先使用数据库构建.这是该数据项的属性的屏幕截图:

我在哪里更改验证以接受dd/MM/yyyy.还有一种方法可以设置它,如果在美国有用户,它会将日期选择器和验证更改为MM/dd/yyyy吗?
在这两种情况下,日期将作为标准yyyy-MM-dd hh:mm:ss保存到数据库中