Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Добавить новое поле в Identity ASP.NET MVC 5 / 1 сообщений из 1, страница 1 из 1
24.02.2014, 17:56
    #38570774
TuxCod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить новое поле в Identity ASP.NET MVC 5
Доброе время суток!
Столкнулся с проблемой на которую не могу найти ответ.
Мне нужно добавить поле Email в Identity

Включил миграцию базы, добавил новый файл "IdentityModels.cs "в папку Models в котором следующий код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public class ApplicationUser : IdentityUser
    {
        public string Email { get; set; }
    }
    public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext()
            : base(BuildInfo.Config.Current.MainDatabase.ConnectionString)
        {
        }
    }



Запустил обновление миграции, в базе данных появилось моё поле Email

Теперь в AccountController вношу изменения в регистрацию пользователя

До изменения:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
public async Task<IHttpActionResult> Register(RegisterBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var user = new IdentityUser()
            {
                UserName = model.UserName
            };

            IdentityResult result = await UserManager.CreateAsync(user, model.Password);
            IHttpActionResult errorResult = GetErrorResult(result);

            if (errorResult != null)
            {
                return errorResult;
            }

            return Ok();
        }



После изменения:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
public async Task<IHttpActionResult> Register(RegisterBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var user = new ApplicationUser()
            {
                UserName = model.UserName,
                Email = model.Email
            };

            IdentityResult result = await UserManager.CreateAsync(user, model.Password);
            IHttpActionResult errorResult = GetErrorResult(result);

            if (errorResult != null)
            {
                return errorResult;
            }

            return Ok();
        }



Теперь когда пытаюсь добавить нового пользователя получаю ошибку:
Не найдена информация о сопоставлении и метаданных для типа EntityType \"Rezerv.API.Models.ApplicationUser\".

Не как не могу разобраться как от неё избавится.

Пожалуйста помогите решить.

Заранее огромное спасибо!
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Добавить новое поле в Identity ASP.NET MVC 5 / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]