我有一个ASP.NET MVC Web应用程序,我想使用angular注册和登录。当用户想要登录/注册时,我在我的WebAPI上调用登录和注册方法。问题是我不知道如何将我在帐户控制器中的MVC登录和注册转移到我的WebAPI。
我当前的Register方法如下所示:
var target = document.getElementsByTagName('canvas');
我的主要问题是以下几行:
// POST api/RegisterApi
public async Task<HttpResponseMessage> Post([FromBody]RegisterViewModel model)
{
if (!ModelState.IsValid)
{
return await this.BadRequest(this.ModelState).ExecuteAsync(new CancellationToken());
}
var user = new ApplicationUser
{
Email = model.Email,
UserName = model.Email
};
IdentityResult result = await this.UserManager.CreateAsync(user, model.Password);
if (!result.Succeeded)
{
return await this.GetErrorResult(result).ExecuteAsync(new CancellationToken());
}
// Auto login after register (successful user registration should return access_token)
var loginResult = this.LoginUser(new LoginViewModel()
{
Email = model.Email,
Password = model.Password
});
return await loginResult;
}
不知怎的,我无法调用CreateAsync-Method,我真的不知道为什么。
我收到以下错误:
任务'不包含'CreateAsync'的定义 没有扩展方法'CreateAsync'接受第一个参数 输入'任务
你们能否正确地提出这方面的意见?到目前为止,我所看到的一切似乎都太复杂了。
编辑:好的错误已经解决,但现在出现了新问题。 CreateAsync方法不创建用户并返回到我的AngularJs中的错误函数。你们有什么建议为什么CreateAsync会失败吗?